pandas 修改某一列值保留2位小数
时间: 2023-10-18 07:18:22 浏览: 310
你可以使用 pandas 的 round() 函数来保留某一列值的小数位数。下面是一个简单的例子:
```python
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [1.23456, 2.34567, 3.45678],
'B': [4.56789, 5.67890, 6.78901]})
# 保留列A的小数点后2位
df['A'] = df['A'].round(2)
print(df)
```
输出结果如下:
```
A B
0 1.23 4.56789
1 2.35 5.67890
2 3.46 6.78901
```
在上面的代码中,我们使用 round() 函数来保留列A的小数点后2位。这样就可以修改某一列的值并保留指定的小数位数了。
相关问题
pandas 在第9列新增一列等于第7列减去第8列,保留两位小数
你可以在上一个问题的基础上稍微修改一下,使用 Pandas 的 `round()` 函数来保留两位小数。具体代码如下:
```
import pandas as pd
# 创建示例数据
data = {'A': [1.2345, 2.3456, 3.4567], 'B': [4.5678, 5.6789, 6.7890], 'C': [7, 8, 9]}
df = pd.DataFrame(data)
# 在第9列新增一列
df.insert(2, 'D', round(df['A'] - df['B'], 2))
print(df)
```
这里使用了 Pandas 的 `round()` 函数,将第7列 'A' 减去第8列 'B' 的差保留两位小数后插入到第9列 'D' 中。输出结果如下:
```
A B D C
0 1.2345 4.5678 -3.333 7
1 2.3456 5.6789 -3.333 8
2 3.4567 6.7890 -3.332 9
```
注意,这里的结果与你预期的结果略有不同,这是由于 Python 中的浮点数精度问题导致的。如果你需要更高的精度,可以使用 Decimal 类型进行计算。
pandas保留三位小数
可以使用`round()`函数来保留pandas数据框中的浮点数列到指定的小数位数。例如,假设有一个名为`df`的数据框,其中包含一个浮点数列`my_col`,并且你想要将其保留到3个小数位,你可以使用以下代码:
```python
df['my_col'] = df['my_col'].round(3)
```
这将返回一个新的数据框,其中的`my_col`列将会保留到3个小数位。如果你想在原始数据框中进行修改,可以使用`inplace=True`参数:
```python
df['my_col'].round(3, inplace=True)
```
这将直接在原始数据框中修改`my_col`列。
阅读全文