2015-07-21 34 views
1

我希望这是一个合适的问题。如果没有,请告诉我,我会立即将其删除。检查python中合并/合并期间出现的错误的大数据帧

问:

如何我可以使用Python检查(视觉?)的组合过程中出现的错误,大数据集?

背景:

我与我相结合,形成一个更大的数据集几大(但不是,你知道“大”)数据集进行操作。这个新的设置大小约为2.5G,所以它不适合大多数电子表格程序,或者至少不是我尝试过的(MS Excel,OpenOffice)。

创建最终数据集的过程使用模糊匹配(通过fuzzywuzzy),并且我想检查匹配的结果以查看是否引入了任何错误。

截至目前,我已经尝试将整个集合导入pandas数据框。这个DF有64列,所以当我简单地做一些像df.head()这样的结果显示的信息显然不会显示所有列;因此我排除了迭代多个.head()调用。

还有一个类似的问题,关于可视化数据帧的特定方面here。我认为我的问题是不同的,因为我不需要想象关于底层结构或类型的任何东西。我只是想直观地检查我怀疑可能有错误的地方。

+2

如何设置显示属性以便显示所有行和列?这可以接受吗? –

+0

感谢您的意见!我已经尝试过了,但是在IDE(我使用PyCharm)的标准屏幕上有包装问题,我想每次检查10-12列。 另一种我现在无法工作的方法是将每一行都设置为一个列表,然后在屏幕上以递减的方式打印列表,以便至少读取“行”以查看是否事情看起来不错。我认为这可能会起作用,因为列表中的每一项都将在屏幕上自行打印,所以我会有很多屏幕空间。 –

+1

我想你可能只需要花费一些时间用索引/选择文档:http://pandas.pydata.org/pandas-docs/version/0.16.2/indexing.html然后,你可以,例如,看看前五列数据,其中某列以字母“W”开始。如果您遇到麻烦的具体事情,请发布有关如何操作的新跟进问题。 – JohnE

回答

1

如何切片您的10-12行,然后转置您有64行x 12列数据框。这应该是可读的,只要你没有非常大的索引名称。

import pandas as pd 
import numpy as np 

# Set max number of rows, 64 would be enough here but I'm trying to be safe 
pd.set_option('display.max_rows', 500) 

df = pd.DataFrame(np.random.randn(1000,64)) 
nstart = 100 
# Slice 12 lines starting at nstart, and transpose that... 
df.iloc[nstart:(nstart+13)].T 

我不介意你在这里输出,但尝试运行上面的代码。

+0

非常赞赏。我认为这是一条路。不是'.iloc'功能的软件。 –

+0

'.ix'接受基于混合整数/标签的索引,如果您需要它。如果我的答案解决了您的问题,请将答案标记为已接受以便关闭此问题 –