Я хотел бы напечатать первые и последние 5 моих данных горячего кодирования. Код ниже. Когда он печатает, печатаются первые и последние 30.
Code:
from random import randint
import pandas_datareader.data as web
import pandas as pd
import datetime
import itertools as it
import numpy as np
import csv
df = pd.read_csv('C:Users\GrahamFam\Desktop\Data Archive\Daily3mid(Archive).txt')
df.columns = ['Date','b1','b2','b3']
df = df.set_index('Date')
reversed_df = df.iloc[::-1]
n=5
#print(reversed_df.drop(df.index[n:-n]))
df = pd.read_csv('C:Users\GrahamFam\Desktop\Data Archive\Daily3eve(Archive).txt')
df.columns = ['Date','b1','b2','b3']
df = df.set_index('Date')
reversed_df = df.iloc[::-1]
n=5
print(reversed_df.drop(df.index[n:-n]),("\n"))
BallOne = pd.get_dummies(reversed_df.b1)
BallTwo = pd.get_dummies(reversed_df.b2)
BallThree = pd.get_dummies(reversed_df.b3)
print(BallOne)
print(BallTwo)
print(BallThree)
print(df.head(5))
и print(df.tail(5))
?
Похоже, print(pd.concat([df.head(5), df.tail(5)]))
получит результат, который вы ищете.
Вы можете использовать функции head
и tail
. Вы можете прочитать о них здесь
>>> DataFrame.head(n)
>>> DataFrame.tail(n)
где n - нет. элементов, которые вы хотите
Если вы хорошо отображаете хвост перед головой, то можете использовать np.r_
нарезку от отрицательного к положительному:
import pandas as pd
import numpy as np
df = pd.DataFrame(list(range(30)))
df.iloc[np.r_[-3:3]]
# 0
#27 27
#28 28
#29 29
#0 0
#1 1
#2 2
В противном случае разрезайте явно:
n = 3
l = len(df)
df.iloc[np.r_[0:n, l-n:l]]
# 0
#0 0
#1 1
#2 2
#27 27
#28 28
#29 29
Да, извините, я исправлю.