gpt4 book ai didi

pandas - pd.json_normalize() 出现 “str object has no attribute ' 值'

转载 作者:行者123 更新时间:2023-12-04 16:38:02 28 4
gpt4 key购买 nike

我手动创建一个数据框:

import pandas as pd
df_articles1 = pd.DataFrame({'Id' : [4,5,8,9],
'Class':[
{'encourage': 1, 'contacting': 1},
{'cardinality': 16, 'subClassOf': 3},
{'get-13.5.1': 1},
{'cardinality': 12, 'encourage': 1}
]
})
我将其导出到 csv 文件以在拆分后导入:
df_articles1.to_csv(f"""{path}articles_split.csv""", index = False, sep=";")
我可以用 pd.json_normalize() 拆分它:
df_articles1 = pd.json_normalize(df_articles1['Class'])
我将其 csv 文件导入 Panda Dataframe:
df_articles2 = pd.read_csv(f"""{path}articles_split.csv""", sep=";") 
但拆分失败并显示“AttributeError: 'str' object has no attribute 'values'” pd.json_normalize(df_articles2['Class'])谢谢。

最佳答案

那是因为当您通过 to_csv() 保存时您的 中的数据'类' 列存储为 string不像 dictionary/json所以在加载保存的数据后:

df_articles2 = pd.read_csv(f"""{path}articles_split.csv""", sep=";") 
然后使用 eval() 使其恢复原状方法和 apply()方法:-
df_articles2['Class']=df_articles2['Class'].apply(lambda x:eval(x))
最后:
resultdf=pd.json_normalize(df_articles2['Class'])
现在如果您打印 resultdf你会得到你想要的输出

关于pandas - pd.json_normalize() 出现 “str object has no attribute ' 值',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66834210/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com