gpt4 book ai didi

python - python 中的向量化 get() 方法

转载 作者:行者123 更新时间:2023-12-01 02:33:02 25 4
gpt4 key购买 nike

我正在尝试将 get() 方法从包含字典的一列矢量化到同一数据帧中的另一列。例如,我希望将地址列字典中的城市填充到address.city 列中。

df = pd.DataFrame({'address': [{'city': 'Lake Ashley', 'state': 'MN', 'street': '56833 Baker Branch', 'zip': '15884'},
{'city': 'Reginaldfurt', 'state': 'MO',
'street': '045 Bennett Motorway Suite 404', 'zip': '68916'},
{'city': 'East Stephaniefurt', 'state': 'VI', 'street': '908 Matthew Ports Suite 313', 'zip': '15956-9706'}],
'address.city': [None, None, None],
'address.street': [None, None, None]})

我正在尝试

df['address.city'].apply(df.address.get('city'))

但这不起作用。我想我已经很接近了 df.address[0].get('city')确实提取该行的城市值。正如你可以想象的那样,我想对 address.street 做同样的事情。

最佳答案

我认为您想要的是以下内容。但是,您可以像这样解析 address

df.address.apply(pd.Series).add_prefix('address.')
# or
# pd.DataFrame(df.address.tolist()).add_prefix('address.')

address.city address.state address.street address.zip
0 Lake Ashley MN 56833 Baker Branch 15884
1 Reginaldfurt MO 045 Bennett Motorway Suite 404 68916
2 East Stephaniefurt VI 908 Matthew Ports Suite 313 15956-9706
<小时/>

这回答了您的问题:

df['address.city'] = df.address.apply(lambda d: d['city'])

df

address address.city address.street
0 {'city': 'Lake Ashley', 'state': 'MN', 'street... Lake Ashley None
1 {'city': 'Reginaldfurt', 'state': 'MO', 'stree... Reginaldfurt None
2 {'city': 'East Stephaniefurt', 'state': 'VI', ... East Stephaniefurt None

关于python - python 中的向量化 get() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46576328/

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