我有一个看起来像这样的数据框:
Column1 Column2
'['jjhjh', 'adads','adsd']', 'dwdwdqw'
'['adads','adsd']', 'dwdwdqw'
'['jjhjh', 'adads','adsd']', 'dwdwdqw'
'['adads','adsd']', 'dwdwdqw'
'['adads','adsd']', 'dwdwdqw'
尽管 Column1 中的项目看起来像项目列表,但它们是字符串。我想从此字符串中删除方括号,删除引号并将该列中的所有值替换为相同的值,但作为逗号分隔的字符串。我想要的输出是:
Column1 Column2
'jjhjh', 'adads','adsd', 'dwdwdqw'
'adads','adsd', 'dwdwdqw'
'jjhjh', 'adads','adsd', 'dwdwdqw'
'adads','adsd', 'dwdwdqw'
'adads','adsd', 'dwdwdqw'
我尝试了以下功能,但它不会替换元素:
def string_convert(column_name):
lista=[]
for i in column_name:
i=i.strip("[]")
i=eval(i)
lista.append(i)
for m in lista:
if m == tuple:
column_name = m[0] + ',' + m[1]
else:
column_name = m
return df['other']
谁能帮我这个?提前致谢。
这个循环对我有用。
for i, row in df.iterrows():
tmp_val = row['Column1'].replace("'", "").replace("[", "").replace("]", "").split(',')
row['Column1'] = tmp_val
这将遍历 DataFrame 的每一行,并通过执行字符串替换来修改 Column1 中的单元格以删除您不想要的字符(方括号和单引号)。然后 .split(',') 创建列表,最后一行代码用我们新创建的列表替换原始值。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句