分析多个csv文件

时间:2016-07-18 21:39:55

标签: python csv numpy pandas

我有10个单独的csv文件中的数据。每个csv文件只有一行数据(500000个数据点,没有标题等)。三个问题:

  1. 如何将数据转换为包含500000行的一列?
  2. 将它们导入一个numpy数组更好:500000 x 10来分析它们。如果是这样,怎么能这样做?
  3. 或者最好将它们导入一个DataFrame 500000 x 10,进行分析。

2 个答案:

答案 0 :(得分:1)

假设您有一个文件名列表files。然后:

df = pd.concat([pd.read_csv(f, header=None) for f in files], ignore_index=True)
  1. df是一个10 x 500000的数据帧。使用df.T
  2. 制作500000 x 10

    2和3的答案取决于你的任务。

答案 1 :(得分:0)

首先,阅读所有10个csv:

import os, csv, numpy
import pandas as pd

my_csvs = os.listdir('path to folder with 10 csvs') #selects all files in folder
list_of_columns = []
os.chdir('path to folder with 10 csvs')

for file in my_csvs:
    column = []
    with open(file, 'r') as f:
        reader = csv.reader(f)
        for row in reader:
            column.append(row)
    list_of_columns.append(column)

这是获取列表列的方法。接下来将它们转换为pandas df或numpy或任何你觉得合适的东西。