如何为Pandas DataFrame新增列,将单元格值转为列表形式?
解决方案
你可以通过apply()方法结合list()函数快速实现需求,具体代码如下:
import pandas as pd import numpy as np ds = {'col1' : ['1489900119222', '1319900043111']} df = pd.DataFrame(data=ds) # 新增col2列,将col1的每个字符串转为字符列表 df['col2'] = df['col1'].apply(list) print(df)
执行后的输出结果:
col1 col2 0 1489900119222 [1, 4, 8, 9, 9, 0, 0, 1, 1, 9, 2, 2, 2] 1 1319900043111 [1, 3, 1, 9, 9, 0, 0, 0, 4, 3, 1, 1, 1]
说明
由于col1中的值是字符串类型,直接对每个字符串调用list()函数,会自动将字符串的每个字符拆分为列表的独立元素。apply()方法可以逐行处理col1列的每个值,生成对应的列表后赋值给新列col2。
内容的提问来源于stack exchange,提问作者Giampaolo Levorato
相关产品推荐
相关产品推荐

