Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.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:写入csv_Python_Csv_Python 3.x - Fatal编程技术网

Python:写入csv

Python:写入csv,python,csv,python-3.x,Python,Csv,Python 3.x,我正在尝试编写一个脚本来读取文档,并将每个文档的每个唯一单词的总数写入csv。我能够打开和阅读每个文档(从“文档列表”),以及生成每个单词的频率(存储在“单词频率”中)。我遇到的问题是将其写入csv。 我需要最上面的一列是唯一的单词(我已经生成了“语料库标记”,其中包含任何文档中的所有单词),第一行是每个文档的名称(“文档列表”)。然后我需要填写频率(“单词频率”) 有人知道怎么做吗? 多谢各位 编辑 当前(严重故障)代码: *注意:MACdoc是一个创建单词频率的类(除其他外)。它是由其他人为

我正在尝试编写一个脚本来读取文档,并将每个文档的每个唯一单词的总数写入csv。我能够打开和阅读每个文档(从“文档列表”),以及生成每个单词的频率(存储在“单词频率”中)。我遇到的问题是将其写入csv。
我需要最上面的一列是唯一的单词(我已经生成了“语料库标记”,其中包含任何文档中的所有单词),第一行是每个文档的名称(“文档列表”)。然后我需要填写频率(“单词频率”)

有人知道怎么做吗?
多谢各位

编辑

当前(严重故障)代码:


*注意:MACdoc是一个创建单词频率的类(除其他外)。它是由其他人为不同的项目创建的,但似乎工作得很好。

您的问题很难回答,因为它不包含您的代码。您需要发布代码,以便人们可以查看并帮助您改进代码。您最好创建一个。另见。您可以使用“编辑”按钮更新您的问题。祝你好运与其说抽象,不如提供一个。这篇文章还有一点值得注意:
有人知道怎么做吗?
是的,我知道怎么做。现在,如果你向我展示你的变量的结构,你尝试过的代码,以及它是如何失败的,我甚至可以向你展示如何修复它,你当前的代码有什么问题?我们不能运行它,因为它使用了一个我们没有访问权限的类,所以我们无法自己发现。您是否得到了错误的输出?没有输出?例外?如果出现异常,请提供回溯。如果您得到错误的输出,请给我们一个(简短的)示例,说明所需的输出和您得到的实际输出。
import csv

def unigramgen(self, name):
    '''
    test function to generate unigram tables
    ::
    '''
    print ("check 1")
    docstats = MACdoc()
    prints('Opening', name + '.csv')
    write_csv = csv.writer(open(name + ".csv", "w"), lineterminator='\n')
    doc_name = os.listdir(os.getcwd())
    col_names = ['Doc Name']
    for i in docstats.corpus_types():
        col_names.append(i)
    print ("check 2")
    write_csv.writerow(col_names + '\n')

    i = 0

    prints('Writing data to table...')
    print ("check 3")
    for document in self.document_list:
        prints('Writing data for', document, '...')
        name = doc_name

        freqs = docstats.wordfreq[i, :]
        freqs = [str(freq) for freq in freqs]

        row = name + freqs

        write_csv.writerow(row + '\n')

        i += 1
    print ("check 4")
    return True