인덱스를 사용하여 팬더 DataFrame에서 특정 셀의 값을 설정하는 방법

  1. pandas.Dataframe.at 메소드를 사용하여 팬더 DataFrame의 특정 셀에 대한 값 설정
  2. DataFrame.set_value() 메소드를 사용하여 pandas DataFrame의 특정 셀에 대한 값 설정
  3. Dataframe.loc 메소드를 사용하여 pandas DataFrame의 특정 셀에 대한 값 설정

Pandas는 데이터 중심의 파이썬 패키지로, 파이썬에서 데이터를 쉽고 일관성있게 분석 할 수 있습니다. 이 기사에서는 인덱스를 사용하여 팬더 DataFrame데이터 구조의 특정 셀에 대한 값에 액세스하고 설정하는 다양한 방법을 살펴 보겠습니다.

pandas.Dataframe.at 메소드를 사용하여 팬더 DataFrame의 특정 셀에 대한 값 설정

pandas.Dataframe.at 메소드는 주로 DataFrame에 단일 값을 설정해야 할 때 사용됩니다.

import pandas as pd

sample_df = pd.DataFrame([
                [10, 20, 30],
                [11, 21, 31],
                [15, 25, 35]],
                index=[0, 1, 2],
                columns=['Col1', 'Col2', 'Col3'])
                  
print"\nOriginal DataFrame"
print(pd.DataFrame(sample_df))
sample_df.at[0, 'Col1'] = 99
sample_df.at[1, 'Col2'] = 99
sample_df.at[2, 'Col3'] = 99

print"\nModified DataFrame"
print(pd.DataFrame(sample_df))

산출:

Original DataFrame
   Col1  Col2  Col3
0    10    20    30
1    11    21    31
2    15    25    35

Modified DataFrame
   Col1  Col2  Col3
0    99    20    30
1    11    99    31
2    15    25    99

아시다시피 셀에 액세스하는 동안 인덱스와 열을.at[0, 'Col1']로 지정했습니다. 그 중 첫 번째 매개 변수는 인덱스이고 두 번째는 열입니다.

열을 그대로두고 색인 만 지정하면 해당 색인의 모든 값이 수정됩니다.

DataFrame.set_value() 메소드를 사용하여 pandas DataFrame의 특정 셀에 대한 값 설정

또 다른 대안은Dataframe.set_value()방법입니다. 이것은 이전 방법과 매우 유사하며 한 번에 하나의 값에 액세스하지만 구문에는 약간의 차이가 있습니다.

import pandas as pd

sample_df = pd.DataFrame([
                [10, 20, 30],
                [11, 21, 31],
                [15, 25, 35]],
                index=[0, 1, 2],
                columns=['Col1', 'Col2', 'Col3'])
                  
print"\nOriginal DataFrame"
print(pd.DataFrame(sample_df))

sample_df.set_value(0, 'Col1',99)
sample_df.set_value(1, 'Col2',99)
sample_df.set_value(2, 'Col3',99)

print"\nModified DataFrame"
print(pd.DataFrame(sample_df))

산출:

Original DataFrame
   Col1  Col2  Col3
0    10    20    30
1    11    21    31
2    15    25    35

Modified DataFrame
   Col1  Col2  Col3
0    99    20    30
1    11    99    31
2    15    25    99

Dataframe.loc 메소드를 사용하여 pandas DataFrame의 특정 셀에 대한 값 설정

구문에 약간의 차이가있는 특정 셀을 설정하는 또 다른 실행 가능한 방법은Dataframe.loc 방법입니다.

import pandas as pd

sample_df = pd.DataFrame([[10, 20, 30],
                [11, 21, 31],
                [15, 25, 35]],
                index=[0, 1, 2],
                columns=['Col1', 'Col2', 'Col3'])
                  
print"\nOriginal DataFrame"
print(pd.DataFrame(sample_df))

sample_df.loc[0, 'Col3'] = 99
sample_df.loc[1, 'Col2'] = 99
sample_df.loc[2, 'Col1'] = 99

print"\nModified DataFrame"
print(pd.DataFrame(sample_df))

산출:

Original DataFrame
   Col1  Col2  Col3
0    10    20    30
1    11    21    31
2    15    25    35

Modified DataFrame
   Col1  Col2  Col3
0    10    20    99
1    11    99    31
2    99    25    35

이 기사에서 언급 된 모든 방법은 구문과 사양에 약간의 차이가있는 팬더DataFrame에서 특정 셀을 수정하거나 설정하는 편리한 방법입니다.

관련 문장 - Pandas DataFrame

  • Pandas DataFrame에서 열 이름을 바꾸는 방법