混合对象类型列和管理重复项

2024-10-01 19:16:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经合并了4个数据集,我可以在数据框中发现重复的行。但是,当我命令pandas向我显示重复的行时,它表示没有,因此我删除重复行的代码没有响应。任何帮助都将不胜感激。你知道吗

数据帧示例:

end_time_x  start_time_x    duration    deviceuuid  time_offset_x   exercise_type   max_speed   calorie mean_speed  distance    ... time_offset create_time weekday month   startsleep  wakeup  sleep_duration  duration_mins   powernaps   weekend
0   2018-01-07 10:01:00-04:00   2018-01-07 07:21:00-04:00   831210  F/D7+hL5E5  UTC-0300    1001    1.750000    54.340  1.376099    905.360 ... UTC-0400    2018-01-07 10:15:59.770000-04:00    6   1   7   10  02:40:00    160.0   False   True
1   2018-01-07 10:01:00-04:00   2018-01-07 07:21:00-04:00   831210  F/D7+hL5E5  UTC-0300    1001    1.750000    54.340  1.376099    905.360 ... UTC-0400    2018-01-07 05:12:34.278000-04:00    6   1   0   4   04:12:00    252.0   False   True
2   2018-01-07 10:01:00-04:00   2018-01-07 07:21:00-04:00   831210  F/D7+hL5E5  UTC-0300    1001    1.750000    54.340  1.376099    905.360 ... UTC-0400    2018-01-08 07:45:13.936000-04:00    6   1   22  7   09:11:00    551.0   False   True
3   2018-01-07 10:01:00-04:00   2018-01-07 07:21:00-04:00   831210  F/D7+hL5E5  UTC-0300    1001    1.750000    54.340  1.376099    905.360 ... UTC-0400    2018-01-07 10:15:59.770000-04:00    6   1   7   10  02:40:00    160.0   False   True

我已经尝试了下面的代码,但是如果省略drop\u duplicates行,它们会产生相同的结果。你知道吗

检查重复项的代码:

df_merged.duplicated().sum()
df_merged.loc[df_merged.duplicated(),:]

通过在4个数据帧中的2个数据帧中首先删除重复项来合并数据帧的代码:

df_exercise_cleaned=df_exercise.drop_duplicates()
df_HR_cleaned=df_HR.drop_duplicates()    df_merged=df_exercise_cleaned.merge(df_HR_cleaned,on='date',how='inner').merge(df_FC, on='date',how='inner').merge(df_sleep,on='date',how='inner')

添加数据类型后检查混合对象列并将日期转换为数据: df dtypes


Tags: 数据代码falsetruedftimemergeddrop

热门问题