无法让熊猫读取整列数据

时间:2019-05-15 01:46:35

标签: python pandas file csv text

该程序要完成的目标是读取每个列标题,并读取每个列下面的所有数据。读取此数据后,它将列出该数据并将其全部记录到文本文件中。当处理少量数据时,它可以工作,但是处理大量数据(2000行及以上)时,它在文本文件中记录的数字最多为30,则下一个元素为“ ...”。然后直到第2000个元素为止一直正确地恢复记录。

我已经尽力了。请帮助。我几乎在墙上打了一个洞,试图解决这个问题。

import csv
import pandas as pd
import os
import linecache
from tkinter import *
from tkinter import filedialog

def create_dict(df):
    # Creates an empty text file for the dictionary if it doesn't exist
    if not os.path.isfile("Dictionary.txt"):
        open("Dictionary.txt", 'w').close()

    # Opens the dictionary for reading and writing
    with open("Dictionary.txt", 'r+') as dictionary:

        column_headers = list(df)

        i = 0
        # Creates an entry in the dictionary for each header
        for header in column_headers:

            dictionary.write("==========================\n"
                             "\t=" + header + "=\n"
                             "==========================\n\n\n\n")
            dictionary.write(str(df[str(column_headers[i])]))
            #for line in column_info[:-1]:
            #    dictionary.write(line + '\n')
            dictionary.write('\n')
            i += 1

可能不会使用其中的某些导入。我只包括了所有这些人。

1 个答案:

答案 0 :(得分:0)

您可以直接将pandas数据框写入txt文件中。

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randint(low = 1, high = 100, size =3000), columns= ['Random Number'])


filename = 'dictionary.txt'
with open(filename,'w') as file:
    df.to_string(file)