使用单元格的位置替换单元格值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用单元格的位置替换单元格值相关的知识,希望对你有一定的参考价值。
我有以下示例数据框:
ID Text Value
A yes 1
C no 1
我想将第二行中与ID“C”相关联的1值替换为0.我在网上找到的传统替换方法(使用.replace)会将0替换为1。
以下是我想要的数据集:
ID Text Value
A yes 1
C no 0
答案
如何使用基于标签索引的.loc:
df.loc["C", "Value"] = 0
或者使用基于索引的.iloc:
df.loc[1, "Value"] = 0
另一答案
使用np.where
np.where(df.ID=='C',0,df.Value)
Out[260]: array([1, 0], dtype=int64)
另一答案
正如您要求特别使用位置定位。有可能以2种方式完成。使用loc
和iloc
(数字位置)。
import pandas as pd
df = pd.DataFrame({'ID': ['A', 'C'],
'Text' : ['yes', 'no'],
'Value' : ['1', '1']
}
)
# set the id as index
df.set_index('ID', inplace=True)
# use index to raplace value
df.loc['C','Value'] = 0
# reset index
df.reset_index(inplace=True)
# same operation can be done using iloc
# as an example use numeric position to revert back
df.iloc[1, 2] = 1
以上是关于使用单元格的位置替换单元格值的主要内容,如果未能解决你的问题,请参考以下文章
Python Pandas Dataframe 用同一会话的另一个单元格的值替换单元格值