如何在Pandas中用一个值填充一列?

8zzbczxx  于 2023-01-28  发布在  其他
关注(0)|答案(6)|浏览(194)

我在Pandas数据框中有一列连续的数字。

A
1
2
3
4

我想将所有这些值更改为一个简单的字符串,例如“foo”,结果是

A
foo
foo
foo
foo
ttp71kqs

ttp71kqs1#

只需选择列并像平常一样分配:

In [194]:
df['A'] = 'foo'
df

Out[194]:
     A
0  foo
1  foo
2  foo
3  foo

分配标量值会将所有行设置为相同的标量值

xqnpmsa8

xqnpmsa82#

上面的好答案是一个警告,你也可以这样做:

df.insert(0, 'A', 'foo')

其中0是新列将插入的位置的索引。

vsaztqbk

vsaztqbk3#

您还可以通过使用:作为参数来寻址所有行,从而利用.loc属性的强大功能。

df.loc[:]['A'] = 'foo'

导致

A
0  foo
1  foo
2  foo
3  foo
093gszye

093gszye4#

可以使用assign方法:

df = df.assign(A='foo')
y1aodyip

y1aodyip5#

要在不收到切片错误/警告的情况下执行此操作,您可以执行以下操作:

df.loc[:]['A'] = 'foo'
jm2pwxwz

jm2pwxwz6#

您也可以尝试pd.Series.replace

df['A'] = df['A'].replace(df['A'], 'foo')
print(df)

输出:

A
0  foo
1  foo
2  foo
3  foo

相关问题