使用Pandas重塑包含非数字值的数据框

时间:2014-07-29 06:15:08

标签: python r pandas reshape

我是目前正在尝试学习python的R用户,大部分时间在我的工作中我需要重塑每个单元格包含字符串的数据帧。使用dcast reshape2 Rpandas包,我很容易进行重塑。我想使用import pandas as pd temp = pd.DataFrame(index=arange(10), columns=['a','b','c','d']) temp['a'] = 'A' temp['b'] = 'B' temp['c'] = 'C' temp['d'] = 'D' temp = pd.melt(temp, id_vars=['a','b']) temp pd.pivot_table(temp,index=['a','b'],columns='variable',values='value') 包来做类似的事情,如下面的脚本:

DataError: No numeric types to aggregate

它一直给我aggfunc的错误,我认为np.mean是问题,因为默认值为aggfunc,是否有其他{{1}}列出了单元格比计算单元格的某些值?

1 个答案:

答案 0 :(得分:1)

pd.pivot_table(temp,index=['a','b'],columns='variable',values='value',
               aggfunc=lambda x: ', '.join(x.unique()))

您可以将自己的功能编写到aggfunc