Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python - Pandas Dataframe의 특정 행만 합산

<시간/>

특정 행만 합산하려면 loc() 메서드를 사용합니다. :연산자를 사용하여 시작 및 끝 행 인덱스를 언급합니다. loc()을 사용하여 포함할 열을 설정할 수도 있습니다. 결과를 새 열에 표시할 수 있습니다.

먼저 DataFrame을 생성해 보겠습니다. 시작 및 마감 재고를 포함한 제품 기록이 있습니다. −

dataFrame = pd.DataFrame({"Product": ["SmartTV", "ChromeCast", "Speaker", "Earphone"], "Opening_Stock": [300, 700, 1200, 1500], "Closing_Stock": [200, 500, 1000, 900]})

일부 행의 합계(예:1 st ) 두 줄. 열 이름은 loc(), 즉 Opening_Stock 및 Closing_Stock에서도 언급됩니다. 새 열 "Sum_Result"에 결과를 표시하고 있습니다 -

dataFrame['Sum_Result'] = dataFrame.loc[0 : 1,["Opening_Stock" , "Closing_Stock"]].sum(axis = 1)

예시

다음은 전체 코드입니다 -

import pandas as pd

dataFrame = pd.DataFrame({"Product": ["SmartTV", "ChromeCast", "Speaker", "Earphone"], "Opening_Stock": [300, 700, 1200, 1500], "Closing_Stock": [200, 500, 1000, 900]})

print"DataFrame...\n",dataFrame

# sum of some rows
# Column names also mentioned in the loc() i.e. Opening_Stock and Closing_Stock
# displaying result in a new column Sum_Result
dataFrame['Sum_Result'] = dataFrame.loc[0 : 1,["Opening_Stock" , "Closing_Stock"]].sum(axis = 1)
print"\nSumming some rows...\n",dataFrame

출력

이것은 다음과 같은 출력을 생성합니다 -

DataFrame...
   Closing_Stock   Opening_Stock   Product
0           200             300    SmartTV
1           500             700    ChromeCast
2          1000            1200    Speaker
3           900            1500    Earphone

Summing some rows...
   Closing_Stock   Opening_Stock   Product   Sum_Result
0           200             300    SmartTV       500.0
1           500             700    ChromeCast   1200.0
2          1000            1200    Speaker         NaN
3           900            1500    Earphone        NaN