TypeError:列表索引必须是整数或切片,而不是str-Python

时间:2019-07-16 08:31:49

标签: python python-3.x csv

我正在尝试对多个.csv文件进行分析。 我有一个包含500多个.csv的文件夹,我想从每个文件夹中提取一些信息,然后使用提取的信息创建一个唯一的.csv。 我正在考虑打开一个文件,执行计算(例如提取RMS,最大值,最小值),使用append()方法将这些值存储在新的DataFrame中,然后将它们移至下一个文件。 不幸的是,到目前为止,我仍然在标题中提到这个问题。在分析输出中的文件时,出现错误“ TypeError:列表索引必须是整数或切片,而不是str”

import os
import pandas as pd
import matplotlib.pyplot as plt
new_df=[]
temp_cols=['Hour','Minute','Second','x_second','RTD_sensor']
### Set your path to the folder containing the .csv files
PATH = 'C:\\Users\\UserName\\Documents\\python\\NASA\\FEMTOBearingDataSet\\Training_set\\Bearing1_1\\temp\\' # Use your path

### Fetch all files in path
fileNames = os.listdir(PATH)

### Filter file name list for files ending with .csv
fileNames = [file for file in fileNames if '.csv' in file]

### Loop over all files
for file in fileNames:

    ### Read .csv file and append to list
    df = pd.read_csv(PATH + file, sep=',', header=None, names=temp_cols, index_col = None)
    for column in range(0,len(temp_cols)):
        new_df['Mean'].append(df.iloc[:,column].mean())

new_df.head()

我收到的错误消息如下:

TypeError                                 Traceback (most recent call last)
    <ipython-input-55-4a40c157922b> in <module>()
         19     df = pd.read_csv(PATH + file, sep=',', header=None, names=temp_cols, index_col = None)
         20     for column in range(0,len(temp_cols)):
    ---> 21         new_df['Mean'].append(df.iloc[:,column].mean())
         22 
         23     ### Create line for every file
TypeError: list indices must be integers or slices, not str

0 个答案:

没有答案