python - Pandas 用列表设置单元格的值范围

标签 python pandas

因此,我尝试使用多个选项来使用列表设置 Pandas 中多个单元格的值,但无法获得正确的结果。在这里和谷歌上搜索都没有运气。 这是我的示例 df

df = pd.DataFrame({'PersonID':['AB-123', 'AB-123', 'AB-123', 'AB-123', 'AB-123'],
'Date':['2/1/2016', '2/2/2016', '2/3/2016', '2/4/2016', '2/5/2016']})
df['Score']=''

我正在尝试在“分数”列中间添加值,并尝试了以下方法;

选项 1:使用 set_value

df = df.set_value([3:5],'Score',[3,4,5])

由于切片和值列表而不起作用。

选项 2:

df.loc[3:5,'Score']=[3,4,5]

与上面相同的问题

选项 3:

df[df.index[3:5]]['Score']=[3,4,5]

以上方法均无效。有谁知道这可以解决吗?

最佳答案

我不知道为什么你需要这个,通过使用numpy.r_

import numpy as np
df.loc[np.r_[2:5],'Score']=[3,4,5]
df
Out[307]: 
       Date PersonID  Score
0  2/1/2016   AB-123    NaN
1  2/2/2016   AB-123    NaN
2  2/3/2016   AB-123    3.0
3  2/4/2016   AB-123    4.0
4  2/5/2016   AB-123    5.0

关于python - Pandas 用列表设置单元格的值范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49247739/

相关文章:

python - 如何将 bash 变量传递到文件中

python - 删除不包含指定整数值的行(Pandas)

python - 如何在交叉表 Pandas 中获取总计?

python - 将向量作为 Pandas 数据框元素

python - 在 Pandas 中合并数据帧时的组合爆炸

python - 如何在 PyQt 中使用按钮在 while 循环中退出程序

python - 使用 python 的 Jira API 在有效凭据上返回错误 401

Python _ValueError : invalid literal for int() with base 10: _very weird

python - 循环列表列表并保存不同的文件

excel - 将一个数据框与另一个数据框重叠并仅保留新的或更改的行