将数组写入csv python(一列)

Posted

技术标签:

【中文标题】将数组写入csv python(一列)【英文标题】:Writing array to csv python (one column) 【发布时间】:2014-02-23 06:49:48 【问题描述】:

我正在尝试将数组的值写入 python 中的 .csv 文件。但是当我在 excel 中打开文件时,数据显示在一行中。我想要一列,其中数组的每个成员都是一行。

数组“testLabels”的格式为:

array(['deer', 'airplane', 'dog', ..., 'frog', 'cat', 'truck'], 
  dtype='<S10')

我用来写入 csv 的代码是:

import csv
resultFile = open("/filepath",'wb')
wr = csv.writer(resultFile)
wr.writerows([testLabels])

任何帮助将不胜感激。

【问题讨论】:

这个问题早就得到了关于python方面的建议的回答。但是,在 MS Excel 中使用函数会更容易:只需使用 text-to-columns function。 【参考方案1】:

试试这个:

wtr = csv.writer(open ('out.csv', 'w'), delimiter=',', lineterminator='\n')
for x in arr : wtr.writerow ([x])

【讨论】:

【参考方案2】:

您应该更改分隔符。 CSV 是逗号分隔值,但 Excel 理解逗号是“;” (是的,很奇怪)。所以你必须添加选项delimiter=";",比如

csv.writer(myfile, delimiter=";")

【讨论】:

excel 使用的分隔符是可配置的……但它不是通过 excel:howtogeek.com/howto/21456/…【参考方案3】:

您需要将列表的每个项目写入 CSV 文件中的一行,以将它们放入一列。

for label in testLabels:
    wr.writerows([label])

【讨论】:

【参考方案4】:

试试这个:

import csv
import numpy as np
yourArray = ['deer', 'airplane', 'dog', ..., 'frog', 'cat', 'truck']
yourArray = np.array(yourArray)

with open('outputFile.csv', 'w', newline='') as csvfile:
    writer = csv.writer(csvfile, delimiter=',')
    for row in range(0,yourArray.shape[0]):
        myList = []
        myList.append(yourArray[row])
        writer.writerow(myList)

【讨论】:

【参考方案5】:

试试这个:

    for i in range(len(testLabels)):
        result_file = open('filePath.csv', 'a')
        result_file.write("".format(testLabels[i], '\n'))

【讨论】:

以上是关于将数组写入csv python(一列)的主要内容,如果未能解决你的问题,请参考以下文章

Python 怎么在csv文件中加入一列数据

python如何根据csv中一列的内容对另一列进行写入

Python 怎么在csv文件中加入一列数据

Python - 需要帮助将字典字典写入 CSV 文件

python中对csv文件某一列的每一行文本进行分词后再写到该文件另一列怎么做

Python将numpy数组写入CSV文件[重复]