코딩(coding)/파이썬 데이터 분석

파이썬 필요 없는 행 제외하기/ 데이터 자리 변경하기 (Danuri coding/다누리 코딩)

다누리_Danuri JUN 2021. 10. 9. 19:20

파이썬에서 데이터셋을 불러오면, 필요 없는 행은 제외해야 하는 경우가 생깁니다.

 

이때 사용하는 코드들은 다음과 같습니다.

# 필요없는 행(row) 제외
df1 = df1[1:]  
#첫번째 행을 지워버린다. 
#이는 가령, 첫번째 행을 컬럼으로 설정하였을때 해당된다.

먼저 다음과 같이,

데이터 프레임을 두 번째 행부터 - 끝까지로 설정하여 다시 저장하는 방법입니다.

 

이외에도

df.drop 을 활용할 수도 있습니다.

df.drop(df.columns[0], axis=1) #이렇게 첫번째 컬럼을 삭제할 수도 있다.
df = df.drop(6) #이렇게 하면, 인덱스 6번째를 드랍한다.

 

다음은 데이터 자리를 변경하는 방법입니다. 

 

np.transpose #이렇게 하면 자리가 바꿔진다. 
df1 = df1.T # 이런식으로도 활용할 수 있다. 

#transpose 할 경우에는, 인덱스 번호가 위로 갈 수가 있다. 이를 고치려면
new_header = df.iloc[0] # 1번째 row를 해더로 설정해준다.
df = df[1:] # 1번째 row를 제외하여 데이터를 저장한다.
df.columns = new_header # 지정한 헤더를 설정한다.

다음과 같이 transpose 를 활용하면 됩니다!

 

여기서 +

여러개의 파일을 불러올 때는 해당 코드를 여러 번 써주어야 하는데요.

이를 간편하기 위해서 함수를 만들 수 있습니다.

#이를 함수로 구현하면
def get_df(url):
    df = pd.read_csv(url).transpose() #데이터를 불러오고, 이를 뒤집는다.
    new_header = df.iloc[0] #첫번째 로우를 설정하고, 이를 저장한다.
    df = df[1:] #그리고 첫번째 row를 지운다.
    df.columns = new_header  #저장한 로우를 해더로 설정한다.
    return df

참고해주시면 되겠습니다 :)