假设有一个 DataFrame 如下:

| A | B_cell | C | D_cell | | --- | ------- | --- | ------- | | 1 | 2 | 3 | 4 | | 5 | 6 | 7 | 8 | | 9 | 10 | 11 | 12 |

则需要计算A列除以B_cell列和D_cell列,生成新列,然后在新列标题后面加上'dq/dv',结果如下:

| A | B_cell | C | D_cell | A/B_cell dq/dv | A/D_cell dq/dv | | --- | ------- | --- | ------- | -------------- | -------------- | | 1 | 2 | 3 | 4 | 0.5 | 0.25 | | 5 | 6 | 7 | 8 | 0.833333333333 | 0.625 | | 9 | 10 | 11 | 12 | 0.9 | 0.75 |

可以使用以下代码实现:

import pandas as pd

# 创建DataFrame
df = pd.DataFrame({'A': [1, 5, 9], 'B_cell': [2, 6, 10], 'C': [3, 7, 11], 'D_cell': [4, 8, 12]})

# 计算新列
df['A/B_cell dq/dv'] = df['A'] / df['B_cell']
df['A/D_cell dq/dv'] = df['A'] / df['D_cell']

# 修改新列标题
df = df.rename(columns={'A/B_cell dq/dv': 'A/B_cell dq/dv', 'A/D_cell dq/dv': 'A/D_cell dq/dv'})

# 在新列标题后面加上'dq/dv'
df.columns = [col + ' dq/dv' if 'cell' in col else col for col in df.columns]

print(df)

代码解释:

  1. 使用 pandas 库创建 DataFrame。
  2. 使用 df['A'] / df['B_cell']df['A'] / df['D_cell'] 计算新列。
  3. 使用 df.rename(columns=...) 修改新列标题。
  4. 使用列表推导式,根据列名是否包含 'cell' 添加 'dq/dv' 后缀。

此代码演示了如何使用 Pandas DataFrame 处理数据,并根据特定条件修改列名。您可以根据自己的需求修改代码,以实现不同的数据处理逻辑。

Pandas DataFrame: 计算包含 'cell' 的列,并生成新列并添加 'dq/dv' 后缀

原文地址: https://www.cveoy.top/t/topic/nwDg 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录