dataframe 每一列都除以一个数
时间: 2024-05-05 22:16:34 浏览: 346
可以使用apply函数来对每一列进行除法操作,如下所示:
```python
import pandas as pd
df = pd.DataFrame({'A': [10, 20, 30], 'B': [5, 10, 15], 'C': [2, 4, 6]})
# 定义除数
divisor = 2
# 对每一列进行除法操作
df = df.apply(lambda x: x / divisor)
print(df)
```
输出结果为:
```
A B C
0 5.0 2.5 1.0
1 10.0 5.0 2.0
2 15.0 7.5 3.0
```
其中,lambda函数表示将每一列x除以除数divisor。apply函数会对每一列都执行这个lambda函数。
相关问题
dataframe用一列除以另一列得到新列
假设你有一个名为 `df` 的 Pandas DataFrame,其中包含两列数据 `col1` 和 `col2`,你可以通过以下方式创建一个名为 `new_col` 的新列,它是 `col1` 除以 `col2` 的结果:
```
df['new_col'] = df['col1'] / df['col2']
```
上述代码会在 `df` 中创建一个新的列 `new_col`,其中包含 `col1` 除以 `col2` 的结果。如果 `col1` 或 `col2` 中有缺失值,那么 `new_col` 中对应的位置也会是缺失值。
你可以根据实际情况修改列名和数据类型,比如将 `col1` 和 `col2` 转换为 float 类型再进行除法运算。
dataframe 除以一列
要将 DataFrame 中的所有值除以一列中的值,可以使用 Pandas 的 `div()` 函数。例如,假设你的 DataFrame 名称为 `df`,要将所有值除以 `df['column_name']` 列中的值,可以使用以下代码:
```python
df = df.div(df['column_name'], axis=0)
```
其中,`axis=0` 表示按行进行操作,即每行的所有值都会除以该行 `column_name` 列中的值。如果要在原 DataFrame 中直接修改而不是返回一个新的 DataFrame,可以使用 `inplace=True` 参数:
```python
df.div(df['column_name'], axis=0, inplace=True)
```
阅读全文