如何用逗号替换panda中嵌套列表列的空白



我有一个带有嵌套列表列的df。例如:df['list']=[['6.65539026-1.24900830'],['6.65537977-1.24882162'],['6.65537977-1.24882162'],[['6.65544653-1.24888170']]

我想转换此列以获得所需的输出[[6.65539026,-1.2490830],[6.65537977,-1.24882162],[6.55537977、-1.248821620],[66.65544653,-1.24888170]]

基本上删除嵌套列表周围的引号,并用逗号替换中间的空格。

试试这个:

df = pd.DataFrame({'list':[[['6.65539026 -1.24900830'],['6.65537977 -1.24882162'],['6.65537977 -1.24882162'],['6.65544653 -1.24888170']]]})
df['list'].explode(ignore_index=True).str[0].str.split()

输出:

0    [6.65539026, -1.24900830]
1    [6.65537977, -1.24882162]
2    [6.65537977, -1.24882162]
3    [6.65544653, -1.24888170]
Name: list, dtype: object

df = pd.DataFrame({'list':[['6.65539026 -1.24900830'],['6.65537977 -1.24882162'],['6.65537977 -1.24882162'],['6.65544653 -1.24888170']]})
df['list_new'] = df['list'].str[0].str.strip('[|]').str.split(' ')

输出:

list                   list_new
0  [6.65539026 -1.24900830]  [6.65539026, -1.24900830]
1  [6.65537977 -1.24882162]  [6.65537977, -1.24882162]
2  [6.65537977 -1.24882162]  [6.65537977, -1.24882162]
3  [6.65544653 -1.24888170]  [6.65544653, -1.24888170]

最新更新