행 기준 데이터 불러오기 (loc)
248
작성한 질문수 20
행을 기준으로 데이터를 불러오는 방법에 대해 질문 드립니다~^^
df.loc[0] 은 0번째 인덱스의 행을 불러옵니다. (맞나요?ㅎㅎ)
그럼 df.loc[0, 1] 은 에러를 출력,
df.loc[0, "열 이름"] 은 "열 이름"의 해당하는 열의 0번째 행의 값을 불러옵니다.
그럼 iloc를 사용하는 것이 아니라면
df.loc[0, 1]가 에러를 출력하는 것은 loc를 이용시 df.loc[0, "열 이름"] 은 0번째 행, 0번째 열의 값을 불러오지만
( [행index, 열index] )을 위처럼 열의 변수명을 이용하는 것이 아닌 둘다 인덱스를 이용시
불러올 수 없는 건가요?
df[0][0]으로 0번째 행의 0번째 열의 값을 출력하는 것을 알고 있지만 제가 이해하는게 맞는 것인지 궁금합니다.
답변 3
0
안녕하세요.
질문주신 두 가지 방법에 대해서는 속도차이는 별로 없습니다.
가장 큰 차이점은 열이름에 공백이나 특수문자가 들어갔을 때 df.열이름 으로 사용할 수가 없습니다.
또, 연산의 속도차이는 %timeit을 통해 직접 프로파일링 해보시면 두 가지 방법의 속도 차이를 좀 더 정확하게 보실 수 있습니다.
%timeit df.열이름.describe()
%timeit df["열이름"].describe()
이렇게 두 가지 방법으로 비교해 보세요!
그리고 df["열이름"] 으로 표현하면 1차원 시리즈로 반환이 되고
df[["열이름"]] 으로 표현하면 2차원 데이터프레임으로 반환이 됩니다.
0
pandas으로 불러온 데이터를 처리하는 과정에서
df.열이름 df["열이름"]
위 두가지 코드에서 특별한 차이점이 있는지 궁금합니다~
예를 들어 df.열이름.describe() 와 df["열이름"].describe 에서 연산의 속도차이가 있나요?
후자는 2차원으로도 표현 가능한 것 같은데 그 외로는 별차이가 없나요~~?
0
안녕하세요.
질문 주신 내용은 .iloc를 사용하시면 0부터 시작하는 인덱스 번호로 데이터를 색인할 수 있습니다.
그리고 .loc 했을 때 인덱스가 숫자이기 때문에 .loc[0] 을 했을 때 첫번째 행을 불러올 수 있는 것입니다.
그래서 .loc는 행의 숫자보다는 인덱스값으로 불러온다가 더 정확한 표현입니다.
.iloc 로 인덱스 번호를 통해 행, 열의 값을 색인해 보세요!
패키지 설치 에러 ydata-profiling
0
121
2
자세한 설명 부탁드려요 ㅜ
0
177
2
seaborn 라이브러리 호출하였으나 그래프가 안 그려져요
0
288
2
value_counts와 count 차이
0
343
2
안녕하세요 데이터 최신과 관련해서 문의드립니다.
0
205
3
scatterplot질문
0
122
1
강의 화면이 안나옵니다
0
164
2
4분12초 2013년부터 데이터가 없으면 어떻게하나요?..
0
188
2
에러 메시지
1
303
2
그래프 색이 동일하게 나옵니다.
0
309
2
시각화 라이브러리 비교
0
383
2
주피터 노트북 설치
0
390
1
2. 상가 기술통계 아웃풋 자료에서 오류가 납니다
0
226
1
14. distplot g = sns.FacetGrid(df_last, row="지역명", height=1.7, aspect=4) g.map(sns.distplot, "평당분양가격", hist=False, rug=True); 오류
0
178
1
group by agg function failed 에러
0
687
2
빈도수가 1000개 이상인 데이터를 따로 담을 때 코드 질문 있습니다.
0
288
2
주피터 노트북 실행 했는데 앞에 *가 생기고 결과가 나오지 않아요
0
363
3
get_string함수에서 문자 'nan'
0
200
1
seaborn X축 시작 지점 조정 질의의 건
0
213
1
14강 distplot 질의
0
289
1
nbextension 설치 및 셋팅 후 적용이 안되는 이슈
0
478
1
corr = df.corr() 입력시 오류
1
373
1
keyword grid_b is not recognized
0
336
1
%ls data 매직커맨드 사용시 한글 깨짐
0
293
1





