TypeError :('序列项0:期望字符串,找到numpy.int64',u'发生在索引1')

时间:2017-02-16 13:09:39

标签: python pandas

我正计算df中每个序列的频率:

VD_1    VD_2    VD_2
35000   35090   31550
35000   35090   31550
35099   45097   
35099   45097   
35099   45097

如果我运行下面给出的代码,我会收到错误TypeError: ('sequence item 0: expected string, numpy.int64 found', u'occurred at index 1')。事实上,代码在其他数据集上运行良好,但在这里它失败了:

df['data'] = df.apply(lambda x: '/'.join(x.dropna()), axis=1)
df = df.data.value_counts().rename_axis('count').reset_index()
df

结果应该是这个:

data                count
35000/35090/31550   2
35099/45097         1

1 个答案:

答案 0 :(得分:2)

您似乎需要为astype(str)int添加string

df['data'] = df.apply(lambda x: '/'.join(x.dropna().astype(str)), axis=1)