【发布时间】:2020-01-19 16:31:12
【问题描述】:
我想添加单个数据框的 2 列。数据帧是两个单个数据帧的结果。代码如下
df1 = pd.read_csv("acc.csv")
df2 = pd.read_csv("gyr.csv")
df = pd.merge(df1, df2, right_index=True, left_index=True)
所以我有列 id、activity、time、accx、accy、accz、id、activity_gur、time、gurx、gury、gurz data.head
df["acc_activity"].value_counts()
sitting 32833
standing 31924
lying 31229
running 30429
climbing_up 26938
walking 26080
climbing_down 25281
jumping 4232
Name: activity, dtype: int64
df["gur_activity"].value_counts()
sitting 33267
standing 32546
walking 31912
lying 31822
running 30958
climbing_down 25786
climbing_up 18343
jumping 4312
Name: activity_gur, dtype: int64
所以我想在现有列中添加一个新列 (SEE DATA.HEAD),它是 activity_gur 和 activity 的总和。因此,在数据头的右侧将添加一个名为活动的新列。例如,此列的爬下活动为 25281+25786=51067。所以在活动列的第 0 行将描述活动向下爬尽可能多的行。其他活动也是如此。当我对 df["activities"].value_counts() 进行 CODE 编码时,它会返回类似上面的内容。之后,我将删除 activity_gur 和 activity 列
我尝试了类似以下的方法:
df1 = pd.DataFrame({'activity': 32833, 31924, 31793, 31229, 30429, 26938, 25281, 4232],
'activity_gur': [33267, 32546, 31912, 31822, 30958, 25786, 18343, 4312]})
df['activityfinal']=df1.activity + df1.activity_gur
但结果列只是添加的值,我不知道每个总和来自哪个活动
你能帮帮我吗?
【问题讨论】:
标签: python pandas dataframe data-analysis sensors