我有一个Csv文件,它是217GB,如何使用Python或PHP脚本无需超时获得唯一列值的计数?从使用Python或PHP的大型CSV文件中计算唯一列值
0
A
回答
1
不确定你的意思是超时,对于像这样的大文件,它总是需要很长时间。
tokens = {}
with open("your.csv") as infile:
for line in infile:
columns = line.split(',')
# Where idx is your desired column index
if columns[idx] not in tokens:
tokens[columns[idx]] = 0
else:
tokens[columns[idx]] += 1
print tokens
这样一行一行地加载文件,所以你的计算不会从将217 GB加载到RAM中时崩溃。你可以先试试看这本词典是否适合你电脑的内存。否则,你可能想考虑以分而治之的方式将文件分割成更小的块。
-1
你可以试着加大field_size_limit
import csv
csv.field_size_limit(1000000000)
r = csv.reader(open('doc.csv', 'rb'))
for row in r:
print(row) # do the processing
相关问题
- 1. 使用熊猫在csv文件中计数唯一的ID(python)
- 2. csv文件行中每列的Python唯一值
- 3. 使用PHP计算CSV文件中的列数?
- 4. 使用条件计算唯一值
- 5. 的CSV文件列计算
- 6. 在Python中将列添加到.CSV文件并计算值
- 7. 在python中从csv文件获取唯一值
- 8. 如何计算跨列中的唯一值大熊猫
- 9. 计算python中每一列csv文件的均值和标准差
- 10. 从awk输出中计算唯一值
- 11. 使用shell脚本计算列中的唯一值
- 12. 使用Python列表中的值创建一个.csv文件
- 13. 从awk中的CSV文件计算总计,按列分组
- 14. 使用Python删除或删除CSV文件中的最后一列使用Python
- 15. 使用countifs计算唯一值?
- 16. Python在csv文件中统计重复项为唯一身份
- 17. 为唯一文件列计算重复值
- 18. 根据另一列的值计算列的唯一值
- 19. 从文本文件中计算唯一字的数量
- 20. 在PHP中读取大型CSV文件
- 21. 使用C++计算CSV文件中列的总和
- 22. 从重复项计算唯一值
- 23. 使用PHP来计算已从CSV文件处理数据的表中的行
- 24. 如何计算表中唯一值的唯一值
- 25. Python:计算数字总和csv文件
- 26. 使用熊猫搜索CSV文件(唯一的ID) - Python
- 27. 庆典更新庞大的CSV文件,从另一家大型csv文件
- 28. 使用熊猫在python中读取大型CSV文件
- 29. 如何在Python中使用PorterStemmer阻止大型csv文件?
- 30. 计算列表中的唯一元素
正如@plsnoban提到,在处理这个巨大的文件将(按大小的性质)需要很长的时间 – salomonderossi