将基于另一列的列与Python和Pandas组合
我有一个巨大的以制表符分隔的文件,如下所示:将基于另一列的列与Python和Pandas组合,python,pandas,Python,Pandas,我有一个巨大的以制表符分隔的文件,如下所示: 3 Line1 0 100 A 4 Line1 100 200 A 7 Line1 200 300 B 2 Line1 300 400 B 12 Line1 400 500 C 10 Line1 500 600 C 对于所有包含字母(A、B、etc)的行,我需要根据第一列中的数字组合它们的值。例如,结果如下所示: 7 A 9 B 22 C 我目前正在使用Pandas+Python来解决这个问题 假设df如下所示: val id l
3 Line1 0 100 A
4 Line1 100 200 A
7 Line1 200 300 B
2 Line1 300 400 B
12 Line1 400 500 C
10 Line1 500 600 C
对于所有包含字母(A、B、etc)的行,我需要根据第一列中的数字组合它们的值。例如,结果如下所示:
7 A
9 B
22 C
我目前正在使用Pandas+Python来解决这个问题 假设df如下所示:
val id line col1 col2
0 3 Line1 0 100 A
1 4 Line1 100 200 A
2 7 Line1 200 300 B
3 2 Line1 300 400 B
4 12 Line1 400 500 C
5 10 Line1 500 600 C
然后,我想你可以使用groupby
,然后是sum
:
result_df = df.groupby('col2')['val'].sum().to_frame('Sum')
print(result_df)
结果:
Sum
col2
A 7
B 9
C 22
必须使用join()方法
对于结果,示例中
A
和B
的值是7和9吗?是的,我错了。我继续纠正了原来的帖子。
Table1.join(table2.set_index(''key"),on='key')
df = pd.DataFrame({'Col1':[3,4,7,2,12,10],'Col2':['A','A','B','B','C','C']})
df.groupby('Col2').sum()