Python Pandas:使用read_json读取大型bz2文件的前x个块或行

Python Pandas:使用read_json读取大型bz2文件的前x个块或行,python,json,pandas,while-loop,Python,Json,Pandas,While Loop,正在尝试使用pd.read_json读取bz2文件 i = 0 while i <3: i = i +1 df = pd.read_json("file.bz2",lines=True, chunksize = 100) for c in chunks: print(c) i=0 而我尝试: 尝试: chucksize将获得100行3次,最终得到300行。查看chuck用法:为什么只想读取文件的一部分?@AlexanderCécile是的,我只想读取文件的一部分Chu

正在尝试使用pd.read_json读取bz2文件

 i = 0
while i <3:
  i = i +1 
  df = pd.read_json("file.bz2",lines=True, chunksize = 100)
for c in chunks:
    print(c)
i=0
而我尝试:

尝试:


chucksize将获得100行3次,最终得到300行。查看chuck用法:为什么只想读取文件的一部分?@AlexanderCécile是的,我只想读取文件的一部分ChuckSize将获得100行3次,最终得到300行。查看chuck用法:为什么你只想读文件的一部分?@AlexanderCécile是的,我只想读文件的一部分如果OP问这个问题是因为他们不能或不想加载整个东西,这个答案不起作用,对吗?他想在3个块后停止。我举了一个例子,我刚刚检查了文档,结果我忘记了
chunksize
的细节。。。facepalm@luigigi我注意到“结果”没有定义。如何附加每个块?带计数器的循环可以替换为。对结果调用
pandas.concat()
,您就完成了。如果OP问这个问题是因为他们不能或不想加载整个内容,这个答案不起作用,对吗?他想在3个块后停止。我举了一个例子,我刚刚检查了文档,结果我忘记了
chunksize
的细节。。。facepalm@luigigi我注意到“结果”没有定义。如何附加每个块?带计数器的循环可以替换为。对结果调用
pandas.concat()
,就完成了。
chunks = pd.read_json("file.bz2",lines=True, chunksize = 100)
i = 0
chunk_list = []
for chunk in chunks:
    if i >= 3:
        break
    i += 1
    # do something with that chunk like this:
    result = pd.merge(chunk, merge_df)
    chunk_list.append(result)
 df = pd.concat(chunk_list)