[python] 팬더에서 데이터 프레임의 처음 세 행을 삭제하십시오.

팬더에서 데이터 프레임의 처음 세 행을 삭제해야합니다.

df.ix[:-1]마지막 행을 제거한다는 것을 알고 있지만 첫 번째 n 행을 제거하는 방법을 알 수 없습니다.



답변

사용 iloc:

df = df.iloc[3:]

처음 세 행이없는 새로운 df를 제공합니다.


답변

더 명확한 방법은 drop을 사용하는 것입니다.

구문은 다음과 같습니다.

df.drop(label)

그리고 @tim과 @ChaimG가 지적한 것처럼, 이것은 제자리에서 수행 할 수 있습니다.

df.drop(label, inplace=True)

이를 구현하는 한 가지 방법은 다음과 같습니다.

df.drop(df.index[:3], inplace=True)

그리고 다른 “제자리에”사용 :

df.drop(df.head(3).index, inplace=True)


답변

df = df.iloc[n:]

n은 첫 번째 n 행을 삭제합니다.


답변

파이썬 슬라이싱을 사용할 수 있지만 제자리에 있지는 않습니다.

In [15]: import pandas as pd
In [16]: import numpy as np
In [17]: df = pd.DataFrame(np.random.random((5,2)))
In [18]: df
Out[18]:
          0         1
0  0.294077  0.229471
1  0.949007  0.790340
2  0.039961  0.720277
3  0.401468  0.803777
4  0.539951  0.763267

In [19]: df[3:]
Out[19]:
          0         1
3  0.401468  0.803777
4  0.539951  0.763267


답변

df.drop(df.index[[0,2]])

팬더는 0부터 시작하는 번호 매기기를 사용하므로 0은 첫 번째 행, 1은 두 번째 행, 2는 세 번째 행입니다.


답변

간단한 방법은 tail (-n)을 사용하여 처음 n 개의 행을 제거하는 것입니다.

df=df.tail(-3)


답변

inp0 = pd.read_csv ( “bank_marketing_updated_v1.csv”, skiprows = 2)

또는 기존 데이터 프레임에서 수행하려는 경우

단순히 다음 명령을 수행