Как мне получить вывод на Python в файл CSV или Excel? - PullRequest
0 голосов
/ 24 октября 2019
for i in range(len(H)):
            S=Y[1:,(0,1,m)]  # change 2=> 2:m
            S=S[S[0:,0] ==HN[k]]
            S=S[S[0:,1] ==H[i]]
            S=S[S[0:,2]!=''] #
            S=S[0:,2]  #
            for j in range(len(S)):
                print(HN[k],H[i],S[j],H[j]*H[I])

Это печатает вывод почти 900-1000 строк на моем ноутбуке Jupyter. Однако я хочу, чтобы вывод был непосредственно csv или xls файлом. Так что мне не нужно копировать или вставлять, это также сэкономило бы мне время, если строки увеличивают мои данные.

Ответы [ 2 ]

0 голосов
/ 24 октября 2019

Вы можете сделать что-то вроде этого:

import csv

csvFile = open('example.csv', 'w')

with csvFile:
    writer = csv.writer(csvFile)
    for i in range(len(H)):
        S=Y[1:,(0,1,m)]
        S=S[S[0:,0] ==HN[k]]
        S=S[S[0:,1] ==H[i]]
        S=S[S[0:,2]!=''] #
        S=S[0:,2]  #
        for j in range(len(S)):
            writer.write('{},{},{},{}\n'.format(HN[k],H[i],S[j],H[j]*H[I]))
0 голосов
/ 24 октября 2019

Вы можете просто сделать следующее.

  • Открыть файл с помощью csv.writer
  • записать в строку записи данные в пишущем устройстве
import csv

...

writer = csv.writer(open("/path/to/my/csv/file", 'w'))
for i in range(len(H)):
    S=Y[1:,(0,1,m)]  # change 2=> 2:m
    S=S[S[0:,0] ==HN[k]]
    S=S[S[0:,1] ==H[i]]
    S=S[S[0:,2]!=''] #
    S=S[0:,2]  #

    for j in range(len(S)):
        writer.writerow(HN[k], H[i], S[j], H[j]*H[i])

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...