我正在清理一些数据。我有来自多个主题的数据,这些主题涉及多个跟踪。
SubNo Trails Score
1 1 4
1 2 4
1 3 8
7 1 9
7 2 8
7 3 8
19
:
:
对于同一主题,我还有另一个数据集,用于SubNo的顺序无关
SubNo Trails Height
19 1 100
19 2 400
19 3 810
7 1 911
7 2 811
7 3 811
20 1 222
20 2 222
20 3 789
1
1
:
:
我想在SubNo上加入这两个内容,这样最终每个主题的得分和身高都有一个CSV。
SubNo Trails Score Height
1 1 4 198
1 2 4 209
1 3 8 289
2 1 : :
2 2
2 3
在这里,我已基于subNo连接了相同的数据:因此,所有1的值在一起,主题2的所有值在一起等等。在我的两个csv文件中,主题的顺序不相同。 所以,我不想基于标题加入,而是基于特定的主题编号。在我的情况下,就是这样的1,2,17,...。 我应该怎么做? (我尝试过熊猫合并,它基于标头工作)。那不会做我想要的。
答案 0 :(得分:0)
您的问题尚不清楚,但是根据我的理解,您正在尝试获取一个包含csv文件的csv文件,其中包含SubNo,Trails,Score和Height列(其中SubNo列为关键)
在这种情况下,您应该执行以下操作:
Container(
child: Center(
child: Row(
children: <Widget>[
Container(), //first
Container(), //second
],
),
),
),
或者:
new_dataframe = left_dataframe.join(right_dataframe.set_index('SubNo'), on='SubNo', how='left')
答案 1 :(得分:0)
请检查pandas merge
功能。您将有效地合并到SubNo
和Trials
上。一个小的代码段是:
df1.merge(df2, how='inner')
完成此步骤后,您可以使用groupby()
函数(可在pandas文档中找到)按主题进行切片,然后根据SubNO对行进行分组,然后将每个组另存为单独的CSV
答案 2 :(得分:0)
使用merge
print (pd.merge(df1, df2, on=['SubNo','Trails'], how='left'))
SubNo Trails Score Height
1 1 4 100
1 2 4 200
7 1 9 300
答案 3 :(得分:0)
Okey,所以我发现的解决方案是对subnum上的每个csv文件进行排序并进行连接。
df1.sort_values(by=['Subnum','Trials'], ascending=True)
df2..sort_values(by=['Subnum','Trials'], ascending=True)
pd.concat([df1,df2],axis=1)