重新采样熊猫数据框和列中的合并字符串
我想重新采样熊猫数据框并将不同的函数应用于不同的列。问题是我无法正确处理一个字符串的列。我想应用一个将字符串与分隔符(如“ - ”)合并的函数。这是一个数据示例:重新采样熊猫数据框和列中的合并字符串
import pandas as pd import numpy as np
idx = pd.date_range('2017-01-31', '2017-02-03')
data=list([[1,10,"ok"],[2,20,"merge"],[3,30,"us"]])
dates=pd.DatetimeIndex(['2017-01-31','2017-02-03','2017-02-03'])
d=pd.DataFrame(data, index=,columns=list('ABC'))
A B C
2017-01-31 1 10 ok
2017-02-03 2 20 merge
2017-02-03 3 30 us
使用求和和平均聚合器工作重新采样数字列A和B.然而,列C与总和(但它被放在第二位,这可能意味着某些失败)的作品。
d.resample('D').agg({'A': sum, 'B': np.mean, 'C': sum}) A C B
2017-01-31 1.0 a 10.0
2017-02-01 NaN 0 NaN
2017-02-02 NaN 0 NaN
2017-02-03 5.0 merge us 25.0
我希望得到这样的:
... 2017-02-03 5.0 merge - us 25.0
我以不同的方式,但没有成功使用lambda试过(未显示)。
如果我可能会问第二个相关问题:我可以为此做一些后处理,但是如何用零或“”填充不同列中的丢失单元格?
回答:
您的'C'
列AGG功能应该是一个join
d.resample('D').agg({'A': sum, 'B': np.mean, 'C': ' - '.join}) A B C
2017-01-31 1.0 10.0 ok
2017-02-01 NaN NaN
2017-02-02 NaN NaN
2017-02-03 5.0 25.0 merge - us
以上是 重新采样熊猫数据框和列中的合并字符串 的全部内容, 来源链接: utcz.com/qa/258723.html