df = pd.DataFrame(my_df)
L = [[int(y) for y in x.split('|')] for x in df['Column_1']]
或者:
L = [list(map(int, x.split('|'))) for x in df['Column_1']]
print (L)
[[1, 4], [3, 9], [15, 18]]
如果分离器的数量不同,则解决方案有效:
my_df = {'Column_1': ['1|4', '3|9', '15|18|45']}
df = pd.DataFrame(my_df)
L = [[int(y) for y in x.split('|')] for x in df['Column_1']]
L = [list(map(int, x.split('|'))) for x in df['Column_1']]
print (L)
[[1, 4], [3, 9], [15, 18, 45]]
2条答案
按热度按时间qc6wkl3g1#
您可以在
|
上拆分列,将其展开为单独的列,然后将其转换为整数。然后您可以将结果数据框转换为嵌套列表:输出:
请注意,如果您只希望输出中包含字符串(如问题标题所述),则代码可以简单得多:
输出:
vql8enpb2#
使用列表解析将拆分值转换为整数:
或者:
如果分离器的数量不同,则解决方案有效:
慢Pandas解决方案:
如果拆分后始终为2个值: