pandas 中的单列

2023-12-07

有没有办法在不影响数据框其余部分的情况下对 pandas 中的单个列进行舍入?

>>> print(df)
  item  value1  value2
0    a    1.12     1.3
1    a    1.50     2.5
2    a    0.10     0.0
3    b    3.30    -1.0
4    b    4.80    -1.0

我已经尝试过以下方法:

>>> df.value1.apply(np.round)
0    1
1    2
2    0
3    3
4    5
5    5

使数据看起来像这样的正确方法是什么:

  item  value1  value2
0    a       1     1.3
1    a       2     2.5
2    a       0     0.0
3    b       3    -1.0
4    b       5    -1.0
5    c       5     5.0

你们非常接近。 您将舍入应用于由下式给出的一系列值df.value1。 因此返回类型是一个Series。 您需要将该系列分配回数据帧(或具有相同索引的另一个数据帧)。

另外,还有一个pandas.Series.round方法基本上是一个简写pandas.Series.apply(np.round).

>>> df.value1 = df.value1.round()
>>> print df
  item  value1  value2
0    a       1     1.3
1    a       2     2.5
2    a       0     0.0
3    b       3    -1.0
4    b       5    -1.0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pandas 中的单列 的相关文章

随机推荐