相关疑难解决方法(0)

Pandas DataFrame:根据条件替换列中的所有值

我有一个简单的DataFrame,如下所示:

熊猫DataFrame

我想从"第一季"列中选择所有值,并将那些超过1990年的值替换为1.在此示例中,只有Baltimore Ravens将1996年替换为1(保持其余数据完好无损).

我使用了以下内容:

df.loc[(df['First Season'] > 1990)] = 1
Run Code Online (Sandbox Code Playgroud)

但是,它将该行中的所有值替换为1,而不仅仅是"第一季"列中的值.

如何只替换该列中的值?

python dataframe pandas

97
推荐指数
6
解决办法
17万
查看次数

Python pandas:根据位置而不是索引值替换值

这是我的df:

In[12]: df  = pd.DataFrame(data = list("aabbcc"), columns = ["s"], index=range(11,17))
In[13]: df
Out[13]: 
    s
11  a
12  a
13  b
14  b
15  c
16  c
Run Code Online (Sandbox Code Playgroud)

现在,根据索引值替换值:

In[14]: df.loc[11, "s"] = 'A'
In[15]: df
Out[15]: 
    s
11  A
12  a
13  b
14  b
15  c
16  c
In[16]: df.ix[12, "s"] = 'B'
In[17]: df
Out[17]: 
    s
11  A
12  B
13  b
14  b
15  c
16  c
Run Code Online (Sandbox Code Playgroud)

是否可以基于位置而不是索引值执行相同的操作,类似于此,但它显示了ValueError(ValueError: Can only index by location with a [integer, …

python pandas

3
推荐指数
1
解决办法
8071
查看次数

标签 统计

pandas ×2

python ×2

dataframe ×1