如何将位于不同子目录中的多个csv文件中的值提取到新的csv文件中?

2024-06-01 05:05:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我不太会写剧本。感谢您的帮助!你知道吗

我试着从我的每一个主题中提取价值观。每个主题都有自己的目录。在他们的目录中有一个csv文件,其中包含血压值,我想将其拉入并保存到一个新的csv文件中。你知道吗

csv是这样设置的

    1     2     3     4   
    3.5   4.0   3.0   5.0 

我希望脚本找到数字“1”、“3”和“4”,并复制与它们关联的值,然后将其保存到我工作目录中的新csv文件中。你知道吗

我找到了一个类似的脚本:

    awk -F "\"*,\"*" '{print $2}' textfile.csv

但是如何让它找到csv文件所在的目录呢?你知道吗

我想一次运行多个主题,新的csv数据如下:

    SUBJECT01   3.5   3.0  4.0 
    SUBJECT02   4.0   2.0  6.0
    SUBJECT03   6.0   5.0  7.0

提前感谢您的帮助/建议。你知道吗


Tags: 文件csv数据目录脚本主题数字print
1条回答
网友
1楼 · 发布于 2024-06-01 05:05:00

所以我以前没有使用过awk,所以我使用Pandas将我的.csv保存到一个数据帧中。在这个脚本中,我创建了一个filename+dataframe对的列表(其中dataframe保存一个特定的患者记录)

我使用OS模块的walk()从子目录获取信息:

import os
import pandas as pd

dfList = [] # holds the file name and the dataframe with its info
for a,b,c in os.walk(os.getcwd()): #creates an iterator that holds a 3 peice tuple where 'a' is path and c[0] is the file name
    if c[0].endswith('.csv'):
        dfList.append((os.path.basename(c[0]), pd.read_csv(a + '\\' + c[0])))

现在您可以根据新的dfList创建摘要报告。我把这些细节留给你。你知道吗

然后要保存您的报告,您可以使用pandas to csv:

finalDf.to_csv("FinalReport.csv")

相关问题 更多 >