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

Puneet Dobhal 2023년1월30일
  1. pandas.dataframe.at 메소드를 사용하여 Pandas DataFrame의 특정 셀에 대한 값 설정
  2. Dataframe.set_value() 메소드를 사용하여 pandas DataFrame의 특정 셀에 대한 값 설정
  3. Dataframe.loc 메소드를 사용하여 pandas DataFrame의 특정 셀에 대한 값 설정
인덱스를 사용하여 Pandas DataFrame에서 특정 셀의 값을 설정하는 방법

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

pandas.dataframe.at 메소드를 사용하여 Pandas 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

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

관련 문장 - Pandas DataFrame