繁体   English   中英

如何根据具有一系列值的条件替换 pd 数据框列中的值?

[英]How to Replace values in a pd dataframe column based on a condition with a range of values?

我有一个列名“id”的数据集 现在,在此列中,所有值应按顺序从 1 到 696,但 636 之后的值是 7*** 某些东西,我想替换所有这些值并将它们置于 637 到 696 的范围内。我该怎么做? 我尝试过替换、.loc、where 等,但它不起作用。

简单地做

import pandas as pd 

df = pd.read_csv('input.csv')
df['id'] = range(1,len(df)+1)

如果您希望它从 0 开始,请执行以下操作:

df['id'] = range(len(df))

简单地,使用numpy.arange为连续整数重新分配id

df = (pd.read_csv("/path/to/data.csv")
        .assign(id = np.arange(1,697))
     )

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM