Skip to main content
 首页 » 编程设计

Python之将更改应用于整个列

2024年10月01日14bjzhanghao

修改整个列中所有值的最佳方法是什么?

这是它的样子:

data.locations.head()     
 
0           [{'name': 'Chevy Chase, MD'}] 
1                [{'name': 'Irvine, CA'}] 
2    [{'name': 'San Francisco Bay Area'}] 
3                 [{'name': 'Macon, GA'}] 
4               [{'name': 'Fremont, CA'}] 
Name: locations, dtype: object 

我想改成这样:

0           [{'Chevy Chase, MD'}] 
1                [{'Irvine, CA'}] 
2    [{'San Francisco Bay Area'}] 
3                 [{'Macon, GA'}] 
4               [{'Fremont, CA'}] 

请您参考如下方法:

您可以使用 apply 通过 [0]list 中选择第一个 dict 然后 名称:

print (df.locations.apply(lambda x: [{x[0]['name']}])) 
0           [{Chevy Chase, MD}] 
1                [{Irvine, CA}] 
2    [{San Francisco Bay Area}] 
3                 [{Macon, GA}] 
4               [{Fremont, CA}] 
Name: locations, dtype: object