Pandas에서 열 이름의 이름을 바꾸는 것
질문
Pandas 데이터 프레임의 열 레이블을 어떻게 변경합니까?
['$a', '$b', '$c', '$d', '$e']
에게
['a', 'b', 'c', 'd', 'e'].
답변
특정 열의 이름을 바꿉니다
df.rename () 함수를 사용하고 이름을 바꿀 열을 참조하십시오.모든 열의 이름을 바꿀 필요가 없습니다.
df = df.rename(columns={'oldName1': 'newName1', 'oldName2': 'newName2'})
# Or rename the existing DataFrame (rather than creating a copy)
df.rename(columns={'oldName1': 'newName1', 'oldName2': 'newName2'}, inplace=True)
최소한의 코드 예제
df = pd.DataFrame('x', index=range(3), columns=list('abcde'))
df
a b c d e
0 x x x x x
1 x x x x x
2 x x x x x
다음 방법은 모두 작동하고 동일한 출력을 생성합니다.
df2 = df.rename({'a': 'X', 'b': 'Y'}, axis=1) # new method
df2 = df.rename({'a': 'X', 'b': 'Y'}, axis='columns')
df2 = df.rename(columns={'a': 'X', 'b': 'Y'}) # old method
df2
X Y c d e
0 x x x x x
1 x x x x x
2 x x x x x
수정이없는 상태가 아닌 결과를 다시 할당하는 것을 잊지 마십시오.또는 inplace = true를 지정하십시오.
df.rename({'a': 'X', 'b': 'Y'}, axis=1, inplace=True)
df
X Y c d e
0 x x x x x
1 x x x x x
2 x x x x x
v0.25에서 잘못된 열 - 바꾸기 이름이 잘못된 경우 오류를 올리려면 오류 = 'raise'를 지정할 수도 있습니다.V0.25 Rename () 문서를 참조하십시오.
열 머리글을 재 할당합니다
df.set_axis ()를 axis = 1 및 inplace = false로 사용하십시오 (복사본을 반환하려면).
df2 = df.set_axis(['V', 'W', 'X', 'Y', 'Z'], axis=1, inplace=False)
df2
V W X Y Z
0 x x x x x
1 x x x x x
2 x x x x x
이렇게하면 사본을 반환하지만 inplace = true를 설정하여 데이터 프레임을 수정할 수 있습니다 (이것은 <= 0.24 버전의 기본 동작이지만 미래의 변경 가능성이 있음).
헤더를 직접 직접 할 수 있습니다.
df.columns = ['V', 'W', 'X', 'Y', 'Z']
df
V W X Y Z
0 x x x x x
1 x x x x x
2 x x x x x
답변
.columns 속성에 할당하십시오.
>>> df = pd.DataFrame({'$a':[1,2], '$b': [10,20]})
>>> df
$a $b
0 1 10
1 2 20
>>> df.columns = ['a', 'b']
>>> df
a b
0 1 10
1 2 20
답변
팬더의 열의 이름을 바꾸는 것은 쉬운 작업입니다.
df.rename(columns={'$a': 'a', '$b': 'b', '$c': 'c', '$d': 'd', '$e': 'e'}, inplace=True)
답변
Rename 메소드는 기능을 수행 할 수 있습니다.
In [11]: df.columns
Out[11]: Index([u'$a', u'$b', u'$c', u'$d', u'$e'], dtype=object)
In [12]: df.rename(columns=lambda x: x[1:], inplace=True)
In [13]: df.columns
Out[13]: Index([u'a', u'b', u'c', u'd', u'e'], dtype=object)
답변
텍스트 데이터 작업에 문의되어있는 것처럼 :
df.columns = df.columns.str.replace('$', '')
답변
DATASET 이름이 DF 인 경우 DF가 있다고 가정하십시오.
df = ['$a', '$b', '$c', '$d', '$e']`
그래서, 이것을 바꾸려면, 우리는 단순히 할 것입니다.
df.columns = ['a','b','c','d','e']
출처:https://stackoverflow.com/questions/11346283/renaming-column-names-in-pandas
최근댓글