【发布时间】:2021-11-16 23:51:52
【问题描述】:
我有一个如下的DataFrame:
A B C
a d '1.1'
a d ' 2 '
a e '1'
a e ' 3 '
c f '3.2 '
我需要对列 C 中的值求和,同时将它们与 A 和 B 分组。但是,这些值是字符串而不是浮点数,有些有空格,有些没有。
我需要 DataFrame 像这样结束:
A B C
a d 1.1+2
a e 1+3
c f 3.2
我尝试做的是:
df.groupby(['A','B']).sum()
但是,由于它们是字符串,它只是将它们合并在一起,实际上并没有对它们求和。之后,我尝试将它们转换为浮动,但由于空格,它不允许我。最后,我尝试删除字符串,但它说它不能对某些元素进行操作,因为它们是整数 (??)。我猜后者是因为它没有空格。
注意:为了更好地理解,这些值带有“+”,但我需要的结果是 3.1、4 和 3.2
我拥有的显式 csv 是这样的:
DL_INSTITUCION,PERIODO_QUE_SE_REPORTA, RESPONSABILIDAD_TOTAL
Santander,201412,"92,467"
Banca Mifel,201412," 39,089 "
Banca Mifel,201412," 28,286 "
Banca Mifel,201412," 310,902 "
CIBanco,201412," 10,106 "
CIBanco,201412," 46,872 "
Banorte/Ixe,201412," 3,127,120 "
CIBanco,201412," 10,163 "
Santander,201412," 545,027 "
Banca Mifel,201412," 10,291 "
Banca Mifel,201412," 80,738 "
Banca Mifel,201412," 46,329 "
HSBC,201412," 583,274 "
CIBanco,201412," 24,094 "
不过是 2800 万行。
【问题讨论】: