当前位置: 首页 > 知识库问答 >
问题:

分析较大文件中的一列[重复]

竺翰海
2023-03-14

我正在使用熊猫。我试图从一个较大的文件中读取一列名称。这个文件总共是35GB,这使得我的内核死了。所以我想在其中一个专栏里读到。然后我希望“块”这个数据,这样内核就不会死。由此,我需要得到每个名字的总和,并找到计数最高的名字。以下是可能有用的:

import pandas as pd

data = pd.read_csv("/Users/Desktop/EQR_Data/EQR_Transactions_1.csv", low_memory=False)

要从主文件导入的列名:

'seller_company_name'

共有2个答案

能业
2023-03-14

如果只在一列中阅读,请使用关键字usecols

data = pd.read_csv("/Users/Desktop/EQR_Data/EQR_Transactions_1.csv", usecols=['seller_company_name'])

然后您可以groupby卖家名称:

grpd = df.groupby('seller_company_name')

在grpd.groups,然后是一个判决,其中包含每个卖家的出现指数列表。用这些列表的长度把它变成一个判决:

result = {d: len(grpd.groups[d]) for d in grpd.groups}
谢旭
2023-03-14

有时候你最好用命令行

如果您可以访问类似unix的环境,这就是grep/sed/awk/cd在处理流时所构建的

看这里举个例子

另一种方法是拆分csv并对其进行批处理(以“,”分隔,第一个零索引列)

cat some.csv | cut -d, -f1 | sort | uniq -c
 类似资料:
  • 我是Spark的新手,有一个1 TB的文件需要处理。 我的系统规格是: 每个节点:64 GB RAM 节点数:2 每个节点的核心:5 正如我所知,我必须重新分区数据以获得更好的并行性,因为火花将尝试仅通过(核心总数*2或3或4)创建默认分区。但在我的情况下,由于数据文件非常大,我必须将这些数据重新分区为一个数字,以便这些数据可以以有效的方式处理。 如何选择要在重新分区中传递的分区数??我应该如何计

  • 如何使用流将Java列表拆分为Java大小为的较小列表? 在JavaScript中,我会使用函数并执行如下操作: 我试图用Java流来实现这一点,但我似乎不知道如何让它允许我使用数组列表

  • 我有一个按类别分组的公司数据集。有些公司有多个类别,可以跨多个列重复。我想知道如何根据类别(比如每个类别的平均值)来分析它们。这是一个示例数据框 我想知道的一项任务是每个类别的平均值。通过关注这个简单的数据集,我知道 cat1 的平均值将是 -0.5。我有一些粗略的方法,但没有完成任务: > 我考虑过将熔体应用于数据。框架,以便类别因子的每个实例都有自己的行(在本例中,维度为10x1,每一行的每个

  • 问题内容: 我正在尝试使用将大文件(> 1 GB)从硬盘复制到USB驱动器。一个描述我正在尝试做的简单脚本是: 在Linux上只需要2-3分钟。但是在Windows下,同一文件上的同一文件副本要花费10-15分钟以上的时间。有人可以解释为什么并给出一些解决方案,最好使用python代码吗? 更新1 将文件另存为test.pySource文件大小为1 GB。目的地目录位于USB驱动器中。使用ptim

  • 我有一个JSON属性文件,由用户手动更新。 我正在使用Jackson对象映射器将其映射到对象: 因为它是由用户手动更新的,所以他们可以使用任何套管;混合、大写、小写等。我找到的解决方案是,在读取文件时,我将转换为小写,如下所示: 在这之后,我使用Jackson映射到我的对象,这很有效。我对映射类使用小写成员名称。这是正确的方法还是有其他方法?

  • 我有一个文件,它以JSON形式存储了许多JavaScript对象,我需要读取该文件,创建每个对象,并对它们做一些事情(在我的例子中,将它们插入数据库)。JavaScript对象可以用一种格式表示: 格式A: 或格式B: 请注意,