python - 尝试更改 Pandas 数据框中的单个值

标签 python python-3.x pandas

我看到了一堆标题相似的问题,但我还是想不通。我想要做的就是用值 100 替换第五行和第五列中我的数据框中的值。 我以为只要这样做就可以了

df.loc['cheerios','rating']= 100

因为 cheerios 是行而 rating 是列

    name        sugar  sodium rating
0   fruit loop       x      x     x
1   trix             x      x     x
2   oreo             x      x     x
3  cocoa puff        x      x     x
4  cheerio           x      x     100

最佳答案

.loc 是一个索引器。它在索引中查找条目,但 name 列不是索引。它只是一个列。以下解决方案可行:

df.loc[4, 'rating'] = 100 # Because 4 is in the index, but how do you know?

或:

df.loc[df['name']=='cheerio', 'rating'] = 100 # Find the row by column

或:

df.set_index('name', inplace=True) # Make 'name' the index
df.loc['cheerios', 'rating'] = 100     # Use the indexer

关于python - 尝试更改 Pandas 数据框中的单个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50938519/

相关文章:

python - 使用 host.get(groupids) 时 Zabbix API 返回错误值

python - Sympy:在关系上使用逻辑运算符

python - Pandas 中的整数切片对于行和列不同?

c++ - 是否有可以解析 C++ 的优秀 Python 库?

python - 如何使 Python 2.x Unicode 字符串不打印为 u'string'?

python - mongoengine中的复合主键

Python 3.1 RSS 解析器?

按第一个分组的元组列表中元组的第二个和第三个元素的 Python 总和

python - Pandas 在数据帧中设置值,多线程 - loc 与 set_value

python - 如果使用 pandas 一列超过 10 个字符,我如何删除整行