programing

팬더는 행별 최소값을 두 개 이상의 열로 얻습니다.

kingscode 2023. 9. 18. 23:11
반응형

팬더는 행별 최소값을 두 개 이상의 열로 얻습니다.

팬더 데이터 프레임 방정식의 일부로 두 데이터 프레임의 최소값을 어떻게 참조할 수 있습니까?저는 파이썬을 사용해 보았습니다.min()기능이 작동하지 않았습니다.저는 이 일에 관련된 것을 찾고 있습니다.

data['eff'] = pd.DataFrame([data['flow_h'], data['flow_c']]).min() *Cp* (data[' Thi'] - data[' Tci'])

팬더도 이용해 보았습니다.min()function, 역시 작동하지 않습니다.

min_flow = pd.DataFrame([data['flow_h'], data['flow_c']]).min()
InvalidIndexError: Reindexing only valid with uniquely valued Index objects

저는 이 오류 때문에 혼란스러웠습니다.데이터 열은 숫자와 이름일 뿐입니다. 인덱스가 어디서 작동하는지 잘 몰랐습니다.

import pandas as pd
import numpy as np

np.random.seed(365)
rows = 10
flow = {'flow_c': [np.random.randint(100) for _ in range(rows)],
        'flow_d': [np.random.randint(100) for _ in range(rows)],
        'flow_h': [np.random.randint(100) for _ in range(rows)]}
data = pd.DataFrame(flow)

# display(data)
   flow_c  flow_d  flow_h
0      82      36      43
1      52      48      12
2      33      28      77
3      91      99      11
4      44      95      27
5       5      94      64
6      98       3      88
7      73      39      92
8      26      39      62
9      56      74      50

행 단위를 구하려는 경우mininum두 개 이상의 열 중에서 를 사용합니다. 기본적으로axis=0; 지정하기axis=1필요합니다.

data['min_c_h'] = data[['flow_h','flow_c']].min(axis=1)

# display(data)
   flow_c  flow_d  flow_h  min_c_h
0      82      36      43       43
1      52      48      12       12
2      33      28      77       33
3      91      99      11       11
4      44      95      27       27
5       5      94      64        5
6      98       3      88       88
7      73      39      92       73
8      26      39      62       26
9      56      74      50       50

여러 열의 최소값을 단일 값으로 구하려면 다음과 같이 하십시오.

data[['flow_h','flow_c']].min().min()

첫 번째 "min()"는 열당 최소값을 계산하고 팬더 시리즈를 반환합니다.두 번째 "min"은 열당 최소값을 반환합니다.

바꿔 부르기도 합니다.min().

data['min_flow'] = data[['flow_h','flow_c']].T.min()

아니면 콜min(axis=1)기본적인 누피 배열에 있어요.

data['min_flow'] = data[['flow_h','flow_c']].values.min(axis=1)

축이 지나가지 않으면,ndarray.min전체 배열에서 평가되므로 여러 열의 단일 최소값(즉, 최소값)에 대해 기본 numpy 배열에 액세스하는 것도 유용할 수 있습니다.

minimum = data[['flow_h','flow_c']].values.min()

numpy를 사용하여 다른 열에서 두 개 이상의 열에 대한 행 단위 최소값을 참조하거나 얻을 수도 있습니다.지정하는 것이 중요합니다.axis=1.

import numpy as np
...
data['min_c_h']= np.min(data[['flow_h','flow_c']],axis=1)

언급URL : https://stackoverflow.com/questions/33975128/pandas-get-the-row-wise-minimum-value-of-two-or-more-columns

반응형