Для 50 CSV-файлов мне нужно вычислить среднее значение и стандартное отклонение только для одного указанного c столбца. Затем мне нужно создать массив из 50 строк и 2 столбцов, чтобы у меня в каждой строке было стандартное и среднее значения одного из файлов CSV. Я застрял на уровне попытки получить среднее и стандартное значение для первого CSV.
Вот что я получил:
import numpy as np
import pandas as pd
import glob
i=0
path ="C:\\Users\\sharon\\Desktop\\mathematical finance\\sadna"
all_files = glob.glob(path + "/*.csv")
arr = np.zeros((50,2))
for filename in all_files:
df = pd.read_csv(filename,encoding="utf-8")
df=df.loc[2:470,'Unnamed: 3']
Mean=df.mean() #DOES NOT WORK
Std=df.std(axis=1) # What?...
arr[i,:]=(Mean,Std)
edit:
проблема с этим кодом решена:
import numpy as np
import pandas as pd
import glob
path ="C:\\Users\\sharon\\Desktop\\mathematical finance\\sadna"
all_files = glob.glob(path + "/*.csv")
df_list = [(pd.read_csv(f, encoding = "utf-8", header = None,usecols = [3], nrows = 470, ).assign(filename = f)) for f in all_files]
final_df = pd.concat(df_list)
final_df[3]= final_df[3].apply(pd.to_numeric, errors='coerce')
agg_df = final_df.groupby(['filename']).agg(['mean', 'std'])