如何在熊猫数据框中反转.astype(str)?

时间:2019-03-12 05:27:08

标签: python python-3.x pandas dataframe

我必须删除数据框中包含列表值的重复行。

所以我用

pd_data['douban_info_string'] = pd_data['douban_info'].astype(str)

“ douban_info_string”具有列表值的地方。

但是现在我需要此列表才能与另一个数据框的列表进行比较。但是列表现在变成了字符串,我得到了这个错误

TypeError: unhashable type: 'list'

2 个答案:

答案 0 :(得分:0)

使用pandas.eval

df = pd.DataFrame({'info':[[1,2,3], [4,5,6]]})

df['info_str']=df['info'].astype(str)
df['info_str'][0]
# '[1, 2, 3]'

df['info_str'].apply(pd.eval)[0]
# [1,2,3]

答案 1 :(得分:0)

尝试一下

pd_data['douban_info_string_list'] = pd_data['douban_info_string'].map(lambda x: x.replace('[', '').replace(']', '').split(','))

希望有帮助。