基本上我有一个数据框,其中包含已作为字符串读入的列表,我想将它们转换回列表。
下面显示了我目前正在做的事情,但我仍在学习并且觉得必须有更好(更高效/Pythonic)的方法来解决这个问题。任何帮助/建设性批评将不胜感激!
import pandas as pd
import ast
df = pd.DataFrame(data=['[-1,0]', '[1]', '[1,2]'], columns = ['example'])
type(df['example'][0])
>> str
n = df.shape[0]
temp = []
temp2 = []
for i in range(n):
temp = (ast.literal_eval(df['example'][i]))
temp2.append(temp)
df['new_col_lists'] = temp2
type(df['new_col_lists'][0])
>> list
最佳答案
也许你可以使用 map :
df['example'] = df['example'].map(ast.literal_eval)
对于 pandas,几乎总有办法避免 for 循环。
关于python - 将 Pandas 数据框中的字符串转换为列表的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52018664/