我在名為df的資料幀中有一個名為geo的熊貓列。它可以填充或不填充。
geo有一個物件,參考一個地方的 id。
我正在使用第 18 行df.iloc[18].geo,它回傳:
"{'place_id': '1c37515518593fe3'}"
它是一個str型別。
我如何在df中創建一個名為place_id的新列來計算值(在我的示例中:1c37515518593fe3)?
uj5u.com熱心網友回復:
這篇文章應該可以幫助您將字串文字轉換為字典: 將字典的字串表示形式轉換為字典?
EDIT 更新了可能的空值
import pandas as pd
import numpy as np
import ast
df = pd.DataFrame(data=["{'place_id': '1c37515518593fe3'}", np.NaN], columns=["geo"])
df["geo"] = df["geo"].apply(lambda x: ast.literal_eval(x) if not pd.isnull(x) else x)
df['place_id'] = df['geo'].apply(lambda x: x.get('place_id', np.NaN) if not pd.isnull(x) else x)
print(df)
geo place_id
0 {'place_id': '1c37515518593fe3'} 1c37515518593fe3
1 NaN NaN
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/435805.html
上一篇:Java-我可以乘以參考的值嗎?
下一篇:動態分配物件和intc
