用 Pandas 将 DataFrame 中某些列和行的值替换为同一 DataFrame 中另一列的值

Posted

技术标签:

【中文标题】用 Pandas 将 DataFrame 中某些列和行的值替换为同一 DataFrame 中另一列的值【英文标题】:Replace values of certain column and rows in a DataFrame with the value of another column in the same dataframe with Pandas 【发布时间】:2022-01-22 20:51:28 【问题描述】:

我想用具有相同索引的“keterangan”列替换“categori”列中从索引 155 到 304 的值,这是我的数据集的样子:

我已经尝试过了,但它不起作用

# make a variabel with value from 155 to 304
ket_list = list(range(155,305))

# Selecting new value
new = df['keterangan'][ket_list]
new

# Selecting old value
old = df['categori'][ket_list]
old

# replace values of "categori" value with
# "keterangan" value from the same dataframe
df = df.replace(['old'],'new')

【问题讨论】:

【参考方案1】:

这可以让它工作

df.loc[155:305,'categori'] = df['keterangan']

这将仅将索引上的值从keterangan 复制到categori155305

【讨论】:

让我知道这是否有帮助

以上是关于用 Pandas 将 DataFrame 中某些列和行的值替换为同一 DataFrame 中另一列的值的主要内容,如果未能解决你的问题,请参考以下文章

使用 JSON 对象展开 Pandas DataFrame 列

如何将“字节”对象转换为 Pandas Dataframe、Python3.x 中的文字字符串?

Pandas Dataframe 聚合对象类型

将具有相同列/索引的两个 pandas DataFrame 合并为一个 DataFrame

将 Pandas DataFrame 中的列组合到 DataFrame 中的列表列

pandas的DataFrame对象抽取“整列”或者“整行”数据