Python CSV 文件中位数计算程序
以下是一个使用Python编写的程序,可以实现读取文件夹中的所有CSV文件,筛选特定列并计算每列的中位数,并将结果保存到新的CSV文件:
import os
import pandas as pd
# 读取文件夹中的所有csv文件
folder_path = './csv_files/'
csv_files = [f for f in os.listdir(folder_path) if f.endswith('.csv')]
# 定义需要筛选的列名
column_names = ['tumor', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H']
# 遍历每个csv文件并计算中位数
for file_name in csv_files:
file_path = os.path.join(folder_path, file_name)
df = pd.read_csv(file_path)
selected_columns = df[column_names]
medians = selected_columns.median()
# 保存中位数到文件
output_file_name = os.path.splitext(file_name)[0] + '_medians.csv'
output_file_path = os.path.join(folder_path, output_file_name)
medians.to_csv(output_file_path, index=False)
解释:
- 使用
os.listdir函数列出文件夹中所有文件,然后用列表推导式筛选出所有以.csv结尾的文件。 - 定义一个需要筛选的列名列表,然后使用
pandas库的read_csv函数读取每个csv文件,并使用列名列表选择需要的列。使用median函数计算每一列的中位数。 - 构造输出文件名,使用
to_csv函数将中位数保存到文件中。注意index=False参数表示不保存行索引。
原文地址: https://www.cveoy.top/t/topic/ki8t 著作权归作者所有。请勿转载和采集!