인프런 커뮤니티 질문&답변

Namsoon Do님의 프로필 이미지
Namsoon Do

작성한 질문수

단 두 장의 문서로 데이터 분석과 시각화 뽀개기

서울시 코로나 21강 loc 질문 df_day_oversea.loc[df_day_oversea["해외"]=="중국","누적확진수"].plot()

작성

·

222

1

위의 코드에서 그래프를 유럽,  미국 이렇게 여러 선 그래프를 그리려면 

Loc  에 어떻게 추가하면 될까요.. 유용한것 같아서 &도 넣어봤는데 실패했어요 ㅠㅠㅠ

답변 5

1

Namsoon Do님의 프로필 이미지
Namsoon Do
질문자

선생님 너무 감사해요! 중요한 걸 알았네요. 여러 그래프 선은 엑셀처럼 칼럼이 있어야 하는군요

성공했어요!  비전공자인데도 잘 됩니다^^

0

박조은님의 프로필 이미지
박조은
지식공유자

와~ 축하드립니다🎉

판다스 plot 들은 대부분 x축 값을 index 로 y 축값은 컬럼의 값을 가져와요.

scatterplot 등은 예외가 좀 있기는 하지만 기준이 되는 축이 index 로 설정되어 있고

하나의 컬럼만 가져오면 하나의 선 혹은 막대를 여러개의 컬럼을 가져오면 여러개의 선 혹은 막대를 그리게 됩니다.

계속 화이팅 하겠습니다! :)

0

박조은님의 프로필 이미지
박조은
지식공유자

안녕하세요!

업무에 활용해 보실 예정이라니 강의를 만드는데 큰 힘이 됩니다 :)

일단 해당 데이터 프레임이 어떻게 생겼는지 먼저 확인을 해보겠습니다.

"해외"라는 컬럼에 데이터가 들어가 있습니다.

판다스로 그래프를 그릴 때 국가별로 다른 색상으로 그린다면 

중국, 미국, 유럽이 컬럼에 있어야 합니다.

아래와 같이 pivot을 사용해서 해외라는 변수 안의 값을 컬럼으로 만들 수 있습니다.

여기에서 특정 컬럼만 인덱싱을 해서 가져오고 그래프를 그리면 아래와 같이 국가별로 그릴 수 있습니다.

그리고 중간에 비어 있는 값들이 있으니 바로 앞에 값으로 채워주면 보기가 좀 더 좋을거 같아요.

.fillna(method="ffill") 을 하면 앞(forward)의 값으로 

.fillna(method="bfill") 을 하면 뒤(backward)의 값으로 채웁니다. 

    pad / ffill: propagate last valid observation forward to next valid

    backfill / bfill: use next valid observation to fill gap.

감사합니다 :)

0

Namsoon Do님의 프로필 이미지
Namsoon Do
질문자

답변 감사해요

그런데 제가 그리고 싶은건  중국 미국이 합쳐진 값이 아니라 각각 라인으로 나오는 것이거든요.. 이런경우는 변수로 따로 만들어야 할까요?

Ps.  선생님 강의 너무 좋습니다. 저희 부서에서 사무 자동화를 하려는데요..RPA에 같이 붙여보려고 맹 연습중 입니다

0

박조은님의 프로필 이미지
박조은
지식공유자

안녕하세요. 이럴 때는 isin을 사용하시는게 좋습니다.

같은 변수의 여러 값을 가져올 때는 isin을 사용합니다.

아래와 같은 방법으로 사용해 보세요.

isin 에 여러 개의 값을 넣어줄 때는 리스트 형태로 만들어 주세요.

df_day_oversea.loc[df_day_oversea["해외"].isin(["중국", "미국", "유럽"]),"누적확진수"].plot()

Namsoon Do님의 프로필 이미지
Namsoon Do

작성한 질문수

질문하기