python - 如何用字符串替换整个 Pandas 单元格的内容?

标签 python pandas

我有一个数据框,其中一行包含以下内容:

id    animal
1     tiger

我想简单地将 1 的值“设置”为“狮子”。

contains_latlong.iloc[1]["animal"]="lion"

是 Pandas 不喜欢的东西。作为新手,我想我会混淆复制和修改数据帧。警告是

SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame

设置一个单元格给定值的方法是什么? (而且,一般来说,我应该如何考虑这个问题?)

编辑:str.replace 不是我在这里寻找的。我只想用其他一些字符串(文字)替换那个单元格的内容(无论它是什么,而不是正则表达式)

最佳答案

一般来说,方法是使用索引和列标识符:

df.loc[1, 'id'] = 'Lion'

产量

  animal    id
1  tiger  Lion

没有任何警告。

您的示例使用“iloc”而不是“loc”,这意味着您需要通过索引而不是名称访问列和索引。 df.iloc[0, 0] = 'Lion' 之类的东西可能适用于您的示例,假设您显示的是没有索引的完整行。

关于python - 如何用字符串替换整个 Pandas 单元格的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31816831/

相关文章:

python - 找出总和最接近给定数 N 的三个整数

javascript - JS - 将字符串列表映射到等长矩阵的有效方法

python - 将 Mx1 大小的数据框添加到 Pandas 中的 MxN 大小的数据框

python - Pandas - 寻找转折点

python - 子集化后如何添加列?

python - QML 兼容多线程/异步调用吗?

python - 使用 python 有条件删除 Azure blob 存储

python - 在 pandas 数据框中重新排序数据

python - 与 Pandas 数据框的关联规则

python - flask 中带有蓝图的静态文件夹