[英]Pandas - Extract string using a specific pattern in column
我的 Dataframe 中有一個列,其中包含以下格式的數據:
id, value
10001, "[{'self': 'https://www.weburl.com', 'value': 'Value 1', 'id': '101'},
{'self': 'https://www.weburl.com', 'value': 'Value 2', 'id': '102'}]"
10002, "[{'self': 'https://www.weburl.com', 'value': 'Value 1', 'id': '101'},
{'self': 'https://www.weburl.com', 'value': 'Value 2', 'id': '102'},
{'self': 'https://www.weburl.com', 'value': 'Value 4', 'id': '104'}]"
我正在嘗試提取數據,以便將以下 output (提取與值字段對應的所有值)作為新列:
id, new_value
10001, Value 1, Value 2
10002, Value 1, Value 2, Value 4
如果您的值是有效的json
,您可以將ast.literal_eval
與列表理解一起使用:
df["value"] = df["value"].apply(literal_eval)
df["value"] = [", ".join(k["value"] for k in i) for i in df["value"]]
print (df)
id value
0 10001 Value 1, Value 2
1 10002 Value 1, Value 2, Value 4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.