繁体   English   中英

将列表中的单个字符串转换为 pandas 中同一列表中的多个字符串

[英]Convert a single string inside list into multiple string inside that same list in pandas

我有一个 dataframe 它由一个具有标签的列组成

tags
------------
['tag1' 'tag2']
['tag1']
['tag5' 'tag3' 'tag6']

如何获得以下格式的 dataframe?

    tags
    ------------
    ['tag1','tag2']
    ['tag1']
    ['tag5','tag3','tag6']

查看单行时:

print(df['tags'][0][0])
>>> "'tag1' 'tag2'"
print(df['tags'][0][0][0]
>>> "'"

我尝试了以下方法:

def Convert(string): 
    li = list(string.split(" ")) 
    return li 
str1 = Convert(df1['tags'][0][0])
print(str1)
>>> ["'tag1'", "'tag2'"]

Method2这对我也不起作用。

import ast
ast.literal_eval(df['tags'][0][0])
>>>'tag1tag2' 

问题2我想计算标签的总出现次数,而df['tags'].value_counts()不起作用。 它要么将整个列表作为计数它们的出现,要么如果我修改列表,那么它将采用字符计数。

这是你想要的?

list1 = ["'tag1' 'tag2'"]
result = [w.strip("'") for w in list1[0].split(' ')]
print(f'converted\n{list1}\nto\n{result}')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM