티스토리 뷰
Stack Overflow에 자주 검색, 등록되는 문제들과 제가 개발 중 찾아 본 문제들 중에서 나중에도 찾아 볼 것 같은 문제들을 정리하고 있습니다.
Stack Overflow에서 가장 먼저 확인하게 되는 가장 높은 점수를 받은 Solution과 현 시점에 도움이 될 수 있는 가장 최근에 업데이트(최소 점수 확보)된 Solution을 각각 정리하였습니다.
아래 word cloud를 통해 이번 포스팅의 주요 키워드를 미리 확인하세요.
How can I get a value from a cell of a dataframe?
데이터프레임의 셀에서 값을 얻으려면 어떻게 해야 하나요?
문제 내용
I have constructed a condition that extracts exactly one row from my data frame:
저는 제 데이터프레임에서 정확히 하나의 행을 추출하는 조건을 구성했습니다.
d2 = df[(df['l_ext']==l_ext) & (df['item']==item) & (df['wn']==wn) & (df['wd']==1)]
Now I would like to take a value from a particular column:
이제 특정 열에서 값을 가져오고 싶습니다.
val = d2['col_name']
But as a result, I get a data frame that contains one row and one column (i.e., one cell). It is not what I need. I need one value (one float number). How can I do it in pandas?
그러나 결과적으로, 저는 하나의 행과 하나의 열(즉, 하나의 셀)을 포함하는 데이터프레임을 얻습니다. 그것은 제가 필요로 하는 것이 아닙니다. 하나의 값(하나의 float 숫자)이 필요합니다. 판다스에서 어떻게 할 수 있나요?
높은 점수를 받은 Solution
If you have a DataFrame with only one row, then access the first (only) row as a Series using iloc, and then the value using the column name:
행이 하나만 있는 DataFrame이 있는 경우 iloc을 사용하여 시리즈로 첫 번째(유일한) 행에 액세스한 다음 열 이름을 사용하여 값에 액세스합니다.
In [3]: sub_df
Out[3]:
A B
2 -0.133653 -0.030854
In [4]: sub_df.iloc[0]
Out[4]:
A -0.133653
B -0.030854
Name: 2, dtype: float64
In [5]: sub_df.iloc[0]['A']
Out[5]: -0.13365288513107493
가장 최근 달린 Solution
In later versions, you can fix it by simply doing:
이후 버전에서는 다음을 수행하여 간단히 수정할 수 있습니다.
val = float(d2['col_name'].iloc[0])
출처 : https://stackoverflow.com/questions/16729574/how-can-i-get-a-value-from-a-cell-of-a-dataframe
'개발 > 파이썬' 카테고리의 다른 글
파일의 마지막 n줄 가져오기 (0) | 2022.12.30 |
---|---|
웹 스크래핑의 HTTP 403 에러 수정하기 (0) | 2022.12.29 |
데이터프레임의 두 열을 인자로 받는 람다 함수 만들기 (0) | 2022.12.29 |
빈 딕셔너리인지 확인하기 (0) | 2022.12.29 |
문자열에 숫자만 포함되어 있는지 확인하기 (0) | 2022.12.29 |