pandas 조정열의 순서 및 추가열의 실현
1. 열의 순서 조정
>>> df = pd.read_excel(r'D:/myExcel/1.xlsx')
>>> df
A B C D
0 bob 12 78 87
1 millor 15 92 21
>>> df.columns
Index(['A', 'B', 'C', 'D'], dtype='object')
# , pandas
# df
>>> df[['A', 'D', 'C', 'B']]
A D C B
0 bob 87 78 12
1 millor 21 92 15
#
>>> df[['A', 'A', 'A', 'A']]
A A A A
0 bob bob bob bob
1 millor millor millor millor
2、어떤 열 또는 어떤 열 추가
(1) 직접 추가
>>> df['E']=[1, 2]
>>> df
A B C D E
0 bob 12 78 87 1
1 millor 15 92 21 2
(2) assign 방법을 호출합니다.이 방법은 기존의 열에 따라 새로운 열을 추가하거나 기본 연산을 통해 함수를 호출하는 데 능하다
>>> df
A B C D
0 bob 12 78 87
1 millor 15 92 21
# E , B -C
>>> df.assign(E=df['B'] - df['C'])
A B C D E
0 bob 12 78 87 -66
1 millor 15 92 21 -77
#
>>> df.assign(E=df['B'] - df['C'], F=df['B'] * df['C'])
A B C D E F
0 bob 12 78 87 -66 936
1 millor 15 92 21 -77 1380
하하, 이상은 판다스가 열의 순서를 조정하고 새로 추가한 열의 사용법추가: pandas DataFrame의 열 이름 수정 & 열 순서 조정
열 이름 수정:
직접 호출 인터페이스:
df.rename()
인터페이스의 정의를 살펴보십시오.
def rename(self, *args, **kwargs):
"""
Alter axes labels.
Function / dict values must be unique (1-to-1). Labels not contained in
a dict / Series will be left as-is. Extra labels listed don't throw an
error.
See the :ref:`user guide <basics.rename>` for more.
Parameters
----------
mapper, index, columns : dict-like or function, optional
dict-like or functions transformations to apply to
that axis' values. Use either ``mapper`` and ``axis`` to
specify the axis to target with ``mapper``, or ``index`` and
``columns``.
axis : int or str, optional
Axis to target with ``mapper``. Can be either the axis name
('index', 'columns') or number (0, 1). The default is 'index'.
copy : boolean, default True
Also copy underlying data
inplace : boolean, default False
Whether to return a new DataFrame. If True then value of copy is
ignored.
level : int or level name, default None
In case of a MultiIndex, only rename labels in the specified
level.
Returns
-------
renamed : DataFrame
See Also
--------
pandas.DataFrame.rename_axis
Examples
--------
``DataFrame.rename`` supports two calling conventions
* ``(index=index_mapper, columns=columns_mapper, ...)``
* ``(mapper, axis={'index', 'columns'}, ...)``
We *highly* recommend using keyword arguments to clarify your
intent.
>>> df = pd.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6]})
>>> df.rename(index=str, columns={"A": "a", "B": "c"})
a c
0 1 4
1 2 5
2 3 6
>>> df.rename(index=str, columns={"A": "a", "C": "c"})
a B
0 1 4
1 2 5
2 3 6
Using axis-style parameters
>>> df.rename(str.lower, axis='columns')
a b
0 1 4
1 2 5
2 3 6
>>> df.rename({1: 2, 2: 4}, axis='index')
A B
0 1 4
2 2 5
4 3 6
"""
axes = validate_axis_style_args(self, args, kwargs, 'mapper', 'rename')
kwargs.update(axes)
# Pop these, since the values are in `kwargs` under different names
kwargs.pop('axis', None)
kwargs.pop('mapper', None)
return super(DataFrame, self).rename(**kwargs)
참고:하나의 *, 입력은 수조, 원조일 수 있으며, 입력한 수조나 원조를 하나의 요소로 분할할 수 있다.
* 2개, 입력은 사전 형식이어야 합니다.
예:
>>>import pandas as pd
>>>a = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6], 'C':[7,8,9]})
>>> a
A B C
0 1 4 7
1 2 5 8
2 3 6 9
# A a,B b,C c
>>>a.rename(columns={'A':'a', 'B':'b', 'C':'c'}, inplace = True)
>>>a
a b c
0 1 4 7
1 2 5 8
2 3 6 9
열의 순서를 조정합니다.
예:
>>> import pandas
>>> dict_a = {'user_id':['webbang','webbang','webbang'],'book_id':['3713327','4074636','26873486'],'rating':['4','4','4'],
'mark_date':['2017-03-07','2017-03-07','2017-03-07']}
>>> df = pandas.DataFrame(dict_a) # DataFrame
>>> df # df , , 'user_id','book_id','rating','mark_date'
book_id mark_date rating user_id
0 3713327 2017-03-07 4 webbang
1 4074636 2017-03-07 4 webbang
2 26873486 2017-03-07 4 webbang
열 이름을 직접 수정하려면 다음과 같이 하십시오.
>>> df = df[['user_id','book_id','rating','mark_date']] # 'user_id','book_id','rating','mark_date'
>>> df
user_id book_id rating mark_date
0 webbang 3713327 4 2017-03-07
1 webbang 4074636 4 2017-03-07
2 webbang 26873486 4 2017-03-07
됐어.이상의 개인적인 경험으로 여러분께 참고가 되었으면 좋겠습니다. 또한 많은 응원 부탁드립니다.만약 잘못이 있거나 완전한 부분을 고려하지 않으신다면 아낌없이 가르침을 주시기 바랍니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【Pandas】DatetimeIndex란? no.29안녕하세요, 마유미입니다. Pandas에 대한 기사를 시리즈로 작성하고 있습니다. 이번은 제29회의 기사가 됩니다. 에서 Pandas의 시간에 대한 모듈에 대해 씁니다. 이번 기사에서는, 「DatetimeIndex」...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.