[PYTHON] 선택한 행과 열의 팬더 분 ()
PYTHON선택한 행과 열의 팬더 분 ()
하나의 행과 최소한의 열만 포함하는 열을 만들려고합니다. 예를 들면 다음과 같습니다.
A0 A1 A2 B0 B1 B2 C0 C1
0 0.84 0.47 0.55 0.46 0.76 0.42 0.24 0.75
1 0.43 0.47 0.93 0.39 0.58 0.83 0.35 0.39
2 0.12 0.17 0.35 0.00 0.19 0.22 0.93 0.73
3 0.95 0.56 0.84 0.74 0.52 0.51 0.28 0.03
4 0.73 0.19 0.88 0.51 0.73 0.69 0.74 0.61
5 0.18 0.46 0.62 0.84 0.68 0.17 0.02 0.53
6 0.38 0.55 0.80 0.87 0.01 0.88 0.56 0.72
여기 컬럼 B0, B1, B2의 각 행에 대한 최소값을 포함하는 컬럼을 생성하려고합니다.
결과는 다음과 같습니다.
A0 A1 A2 B0 B1 B2 C0 C1 Minimum
0 0.84 0.47 0.55 0.46 0.76 0.42 0.24 0.75 0.42
1 0.43 0.47 0.93 0.39 0.58 0.83 0.35 0.39 0.39
2 0.12 0.17 0.35 0.00 0.19 0.22 0.93 0.73 0.00
3 0.95 0.56 0.84 0.74 0.52 0.51 0.28 0.03 0.51
4 0.73 0.19 0.88 0.51 0.73 0.69 0.74 0.61 0.51
5 0.18 0.46 0.62 0.84 0.68 0.17 0.02 0.53 0.17
6 0.38 0.55 0.80 0.87 0.01 0.88 0.56 0.72 0.01
여기에 코드의 일부가 있지만, 내가 원하는 것을하지 않습니다.
for i in range(0,2):
df['Minimum'] = df.loc[0,'B'+str(i)].min()
해결법
-
==============================
1.이것은 한 줄짜리이기 때문에, 아래쪽이 아닌 열을 가로 질러 작동하도록하려면 min에 축 인수를 사용해야합니다.
이것은 한 줄짜리이기 때문에, 아래쪽이 아닌 열을 가로 질러 작동하도록하려면 min에 축 인수를 사용해야합니다.
df['Minimum'] = df.loc[:, ['B0', 'B1', 'B2']].min(axis=1)
다른 열 수에 대해이 솔루션을 사용해야하는 경우 for 루프 또는 목록 이해를 사용하여 열 목록을 구성 할 수 있습니다.
n_columns = 2 cols_to_use = ['B' + str(i) for i in range(n_columns)] df['Minimum'] = df.loc[:, cols_to_use].min(axis=1)
from https://stackoverflow.com/questions/25479607/pandas-min-of-selected-row-and-columns by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 어떻게 장고 모델 클래스를 동적으로 검색합니까? (0) | 2018.10.27 |
---|---|
[PYTHON] 인덱스없이 json으로 팬더 데이터 프레임 (0) | 2018.10.27 |
[PYTHON] Python Pandas DataFrame에서 timedelta64 [ns] 열을 초로 변환하십시오. (0) | 2018.10.27 |
[PYTHON] Java : 자리 표시 자로 문자열 서식 지정 (0) | 2018.10.26 |
[PYTHON] 파이썬에서 "If if from ipython"테스트를 어떻게 할 수 있습니까? (0) | 2018.10.26 |