我想知道如何在从网络抓取信息中动态更改列的值。
目前,我有这样的事情:
号码名称
12 不适用
13 不适用
14 不适用
15 不适用
我希望收到这样的东西:
号码名称
12 迈克
13 鲍勃
14 鲍比
15马克
我尝试过使用这个:
对于电话簿中的号码:
名称 = 获取名称()
电话簿['姓名'][号码] = 姓名
和
phonebook.loc[phonebook.index[号码], '姓名'] = 姓名
但它只是设置所有号码的最后一个号码的名称:
号码名称
12马克
13马克
14 马克
15马克
我怎样才能将每个名字添加到其各自的号码中?
谢谢
最佳答案
从您的网络抓取中,您可以构建一个如下所示的字典:
name = {12: 'Mike', 13: 'Bob', 14: 'Bobby', 15: 'Mark'}
然后您可以映射到现有框架:
df['name']=df['number'].map(name)
df = df.set_index('number')
print(df)
number name
12 Mike
13 Bob
14 Bobby
15 Mark
关于python - 如何使用循环 Pandas 将值添加到列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58824358/