使用 Pandas 库处理数据时,经常需要将数据进行分类,并将分类后的数据保存到不同的文件中。以下代码演示了如何将数据根据 'name' 和 'property' 列进行分类,并分别将 tumor 和 peritumor 数据保存到不同的 CSV 文件中。

import pandas as pd

df = pd.read_csv('./2023_2_20No2/2023_2_20_19.csv', encoding = 'utf-8')
df = df.iloc[:,1:33]
df_tumor = df[df['name'] == 'tumor']
df_peritumor = df[df['name'] == 'peritumor']  
tumor_dict = {}
peritumor_dict = {}
for name in ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H']:
    df_tumor_name = df_tumor[df_tumor['property'] == name]
    df_peritumor_name = df_peritumor[df_peritumor['property'] == name]
    tumor_dict[name] = df_tumor_name
    peritumor_dict[name] = df_peritumor_name
    median = df_tumor_name.iloc[:,2:33].median()
    print(f'Tumor {name}: {median}')
    # 保存数据为csv文件
    df_tumor_name.to_csv(f'./2023_2_20No2/Tumor_{name}.csv', index=False)
    df_peritumor_name.to_csv(f'./2023_2_20No2/Peritumor_{name}.csv', index=False)

这段代码将数据根据 'name' 和 'property' 列进行分类,并分别保存到不同的 CSV 文件中。例如,所有 'name' 为 'tumor' 且 'property' 为 'A' 的数据将被保存到 ./2023_2_20No2/Tumor_A.csv 文件中。

代码解释:

  • df = pd.read_csv('./2023_2_20No2/2023_2_20_19.csv', encoding = 'utf-8'):读取 CSV 文件,并使用 'utf-8' 编码。
  • df = df.iloc[:,1:33]:选择从第二列到第 33 列的数据。
  • df_tumor = df[df['name'] == 'tumor']:选择所有 'name' 为 'tumor' 的数据。
  • df_peritumor = df[df['name'] == 'peritumor']:选择所有 'name' 为 'peritumor' 的数据。
  • for name in ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H']: ...:循环遍历 'property' 列的值。
  • df_tumor_name = df_tumor[df_tumor['property'] == name]:选择所有 'property' 为 'name' 的 tumor 数据。
  • df_peritumor_name = df_peritumor[df_peritumor['property'] == name]:选择所有 'property' 为 'name' 的 peritumor 数据。
  • tumor_dict[name] = df_tumor_name:将分类后的 tumor 数据存储到字典中。
  • peritumor_dict[name] = df_peritumor_name:将分类后的 peritumor 数据存储到字典中。
  • median = df_tumor_name.iloc[:,2:33].median():计算 tumor 数据的中间值。
  • df_tumor_name.to_csv(f'./2023_2_20No2/Tumor_{name}.csv', index=False):将分类后的 tumor 数据保存到 CSV 文件中。
  • df_peritumor_name.to_csv(f'./2023_2_20No2/Peritumor_{name}.csv', index=False):将分类后的 peritumor 数据保存到 CSV 文件中。

注意:

  • 将代码中的 ./2023_2_20No2/2023_2_20_19.csv 替换为实际的 CSV 文件路径。
  • 代码中的 Tumor_{name}.csvPeritumor_{name}.csv 是保存数据的文件名,可以根据需要进行修改。
  • index=False 表示不将索引保存到 CSV 文件中。

使用这段代码,可以方便地将数据根据指定的条件进行分类,并将分类后的数据保存到不同的 CSV 文件中。

Pandas 数据处理:将数据分类并保存到 CSV 文件

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

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