Python 如何按阈值中断数据帧?
我必须按阈值打破记录,然后逐个打印。我用例子来解释你- 我有100条记录的数据框。我的阈值id一次记录20条记录。所以我想在5次打印所有记录,一次打印20条记录。我尝试了一个示例代码,但不起作用 我的代码:Python 如何按阈值中断数据帧?,python,python-3.x,pandas,dataframe,Python,Python 3.x,Pandas,Dataframe,我必须按阈值打破记录,然后逐个打印。我用例子来解释你- 我有100条记录的数据框。我的阈值id一次记录20条记录。所以我想在5次打印所有记录,一次打印20条记录。我尝试了一个示例代码,但不起作用 我的代码: j = 0 for i in (20,df_3.count(), 20): print(df_3.iloc[j:i ,:].to_json(orient='records',lines=True)) time.sleep(5)
j = 0
for i in (20,df_3.count(), 20):
print(df_3.iloc[j:i ,:].to_json(orient='records',lines=True))
time.sleep(5)
print('----------------------')
j = i
你能帮助我如何得到我的要求吗。此代码不适用于我。您只能使用长度为
DataFrame
的i
变量,并添加接下来的20行:
for i in range(0,len(df_3), 20):
a = df_3.iloc[i:i+20].to_json(orient='records',lines=True)
print (a)
time.sleep(5)
如果需要省略前20项:
for i in range(20,len(df_3), 20):
a = df_3.iloc[i:i+20].to_json(orient='records',lines=True)
print (a)
time.sleep(5)
稍有不同的解决方案:
import pandas as pd
df = pd.DataFrame({
'a': range(1, 100),
'b': range(101, 200)
})
step = 20
for i in range(0, len(df), step):
with pd.option_context('display.max_rows', None, 'display.max_columns', None):
print(df[i:i+step])
print('-----------------------------------------------')