Как добавить результат каждой итерации в файл CSV? - PullRequest
0 голосов
/ 15 ноября 2018

Я отправляю числовое поле в цикл for и вычисляю макс, мин и процентиль. Я хочу сохранить каждый результат (последний оператор печати) в CSV-файл. Я буквально поражен здесь.

Каждая итерация в цикле for печатает результат, как показано ниже:

emp_id, 10, 23, 45.4

Я хочу сохранить эти результаты в CSV-файле.

import pandas as pd
import numpy as np

data = pd.read_csv(r'C:\Users\spanda031\Downloads\test_19.csv')
#abc=data.dtypes
#print(abc)
df = data.select_dtypes(include='number')
cols = df.columns.values
print(cols)
arr = df.values
#print("new array ", arr)
#with open(r'C:\Users\spanda031\Downloads\test_19.csv') as f:
#    d_reader = csv.DictReader(f)

    #get fieldnames from DictReader object and store in list
#    headers = d_reader.fieldnames
#    print(headers)
for line in cols:
        #print value in MyCol1 for each row
        #print(line)        
        v3=np.array(data[line])
        #print(v3)        
        print(line,",",v3.min(),",",v3.max(),",",np.percentile(v3, 25))

1 Ответ

0 голосов
/ 15 ноября 2018

Таким образом, я мог бы решить это.

res_df=line,v3.min(),v3.max(),np.percentile(v3, 25),np.std(v3)      
    with open('C:\\Users\\spanda031\\Downloads\\abccc.csv', 'a', newline='') as csvfile:
        writerows = csv.writer(csvfile, delimiter=',',
                        quotechar='"', quoting=csv.QUOTE_MINIMAL)
        writerows.writerow(map(lambda x: x, res_df))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...