Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将结果写入输出文件_Python_Csv_File Io - Fatal编程技术网

Python 如何将结果写入输出文件

Python 如何将结果写入输出文件,python,csv,file-io,Python,Csv,File Io,我在尝试将简单结果输出到输出文件时遇到问题。在这里,我试图使用numpy生成一些伪数据,但这本身就造成了问题,我不断地得到各种错误,基本上与索引不可重写或标量变量的索引无效有关 我想要的是一个输出csv文件,其内容如下: LineID ColA ColB ColC 1 8 2 93 2 7 3 86 3 7 3 89 4 9 2 90 使用的代码: import csv import numpy as np z=np.array([[1,8,2,93],[2

我在尝试将简单结果输出到输出文件时遇到问题。在这里,我试图使用numpy生成一些伪数据,但这本身就造成了问题,我不断地得到各种错误,基本上与索引不可重写或标量变量的索引无效有关

我想要的是一个输出csv文件,其内容如下:

LineID  ColA    ColB    ColC
1  8  2 93
2  7  3 86
3  7  3 89
4  9  2 90
使用的代码:

import csv
import numpy as np



z=np.array([[1,8,2,93],[2,7,3,86],[3,7,3,89],[4,9,2,90]])

#b=np.array(z)
b=z
print('\n','b is : ','\n', b, '\n')

nummy=z[:,0]
ColA_results = z[:,1]
ColB_results = z[:,2]
ColC_results = z[:,3]
print('nummy: ',nummy)
print('ColA_results: ',ColA_results)
print('ColB_results: ',ColB_results)
print('ColC_results: ',ColC_results)

results_filename = (r'/Users/imagexpertinc/Desktop/steve_results/demo_03.csv')
with open(results_filename, 'w', newline='') as filey: ## Python 3... with open('/pythonwork/thefile_subset11.csv', 'w', newline='') as outfile:
    csv_writer = csv.writer(filey, delimiter = '\t', lineterminator='\n')
    csv_writer.writerow(['LineID', 'ColA','ColB','ColC'])
filey.close()




size_of_z=len(z)

indy = range(size_of_z)
print('indy is: ',indy)


for i in indy:
    print('i is :',i)
    print('nummy[i] is: ',nummy[i])
    #nummy = nummy[i]
    ColA_results = ColA_results[i]
    ColB_results = ColB_results[i]
    ColC_results = ColC_results[i]

    with open(results_filename, 'a') as filey: ## Python 3... with open('/pythonwork/thefile_subset11.csv', 'w', newline='') as outfile:
        csv_writer = csv.writer(filey, delimiter = '\t', lineterminator='\n')
        csv_writer.writerow([nummy, ColA_results, ColB_results, ColC_results])

有人指出我做错了什么吗?

你想得太多了。Python将numpy数组视为一个iterable数组,它可以直接传递给
csv.writer.writerows
(注意
s
行中的
s):


你想得太多了。Python将numpy数组视为一个iterable数组,它可以直接传递给
csv.writer.writerows
(注意
s
行中的
s):

您可以尝试:

导入csv
将numpy作为np导入
z=np.数组([[1,8,2,93],[2,7,3,86],[3,7,3,89],[4,9,2,90])
nummy=z[:,0]
ColA_results=z[:,1]
ColB_results=z[:,2]
ColC_结果=z[:,3]
结果\u文件名=(r'/Users/imagexpertinc/Desktop/steve\u结果/demo\u 03.csv')
将open(results_filename'w',newline='')作为filey:##Python 3。。。以open('/pythonwork/thefile_subset11.csv','w',newline=''作为输出文件:
csv_writer=csv.writer(文件Y,分隔符='\t',行终止符='\n')
csv_writer.writerow(['LineID','ColA','ColB','ColC']))
对于范围内的i(z.shape[0]):
csv_writer.writerow([numy[i]、ColA_results[i]、ColB_results[i]、ColC_results[i])
filey.close()
您可以尝试:

导入csv
将numpy作为np导入
z=np.数组([[1,8,2,93],[2,7,3,86],[3,7,3,89],[4,9,2,90])
nummy=z[:,0]
ColA_results=z[:,1]
ColB_results=z[:,2]
ColC_结果=z[:,3]
结果\u文件名=(r'/Users/imagexpertinc/Desktop/steve\u结果/demo\u 03.csv')
将open(results_filename'w',newline='')作为filey:##Python 3。。。以open('/pythonwork/thefile_subset11.csv','w',newline=''作为输出文件:
csv_writer=csv.writer(文件Y,分隔符='\t',行终止符='\n')
csv_writer.writerow(['LineID','ColA','ColB','ColC']))
对于范围内的i(z.shape[0]):
csv_writer.writerow([numy[i]、ColA_results[i]、ColB_results[i]、ColC_results[i])
filey.close()

您现在得到的输出/错误是什么/您现在得到的输出/错误是什么/Hi abhilb,我认为您的解决方案工作得很好,但是我可以问一下范围(z.shape[0]):line有什么作用?z.shape返回一个元组。第一个元素是行数,第二个元素是列数。这里z.shape[0]对应于行数。range(z.shape[0])将给出0,直到行数-1Hi abhilb,我认为您的解决方案非常有效,但我可以问range(z.shape[0]):line的作用是什么吗?z.shape返回一个元组。第一个元素是行数,第二个元素是列数。这里z.shape[0]对应于行数。范围(z.shape[0])将给出0,直到行数为-1
import csv
import numpy as np



z=np.array([[1,8,2,93],[2,7,3,86],[3,7,3,89],[4,9,2,90]])

results_filename = ('/Users/imagexpertinc/Desktop/steve_results/demo_03.csv')
with open(results_filename, 'w', newline='') as filey:
    csv_writer = csv.writer(filey, delimiter = '\t', lineterminator='\n')
    csv_writer.writerow(['LineID', 'ColA','ColB','ColC'])

    csv_writer.writerows(z)