交叉检查丢失的数据-丢失的数据,但不是真的吗?

时间:2018-10-16 12:11:45

标签: python dataset missing-data

我已经在这个问题上坐了很长时间了,我正在寻求帮助。我一直在处理来自SEC EDGAR的数据,其中设法下载了CIK编号,日期,公司名称和ftp路径,以获取公司年度报告的每一个。总而言之,我应该下载7,000行。

我使用Python运行代码以下载这些文本文件(通过读取ftp路径)并将其保存在本地计算机上。这些文件的名称等于CIK号,日期和公司名称,并以'-'分隔。

此后,我写了以下内容以交叉检查是否已下载所有7,000个文本文件:

import os
import csv

tenk_path = "D:/10ks/1 download/"

arr = os.listdir(tenk_path)

csvfile = "data.csv"

with open(csvfile, "a", newline="") as fp:
    wr = csv.writer(fp, dialect='excel')
    wr.writerow(['cik', 'name', 'year', 'unique_key'])

for name in arr:
    main_name = name.split("-")
    unique_key = str(main_name[0])+str(main_name[-1])
    csvRow = [main_name[0],
              main_name[1],
              main_name[-1],
              unique_key]
    with open(csvfile, "a", newline="") as fp:
        wr = csv.writer(fp, dialect='excel')
        wr.writerow(csvRow)
    print(name)

然后,我将(对于方便起见)将CIK和日期(年份)连接起来,这对于所有公司而言都是唯一的。然后,通过使用= TRIM并通过= VALUE将文本字符串转换为数字,确保没有空格。

通过执行此操作,我将要下载的文件的CIK编号和年份相匹配,并与我确实要下载的文件相匹配(6,994)。这样,我发现我找到了所有7,000个匹配项-这在我头上根本没有意义?我已经确保没有路径等是重复的开头,所以不可能如此。

有人可以帮忙吗?数据可以在这里找到:

https://ufile.io/rhuv2

1 个答案:

答案 0 :(得分:1)

我很快就回顾了所有重复内容。我通过强行迫使Excel仅基于串联唯一地进行过滤来解决此问题。但是,此后,我注意到某些ftp路径是重复的-因此,SEC的EDGAR部分出现了错误。