혼자 독학으로 수업 들었는데, 너무 잘 들었습니다~~ 덕분에 R에 조금 가까워진 것 같아요!! R을 공부하다가 질문이 생겨 남깁니다! :) ① 액셀의 countif 기능처럼, character 데이터(혹은 다른 형태)의 개수를 세서 mutate 함수처럼 새로운 행으로 추가할 수 있나요? ② 그리고 액셀에서 하나의 컬럼을 기준으로, 해당 컬럼의 중복값을 제거했을 때, 중복값에 해당된 행들만 제거되고, 나머지 값(해당 컬럼 외에 데이터프레임 내 다른 컬럼들까지도 모두)은 그대로 보존되도록 하려면 어떻게 해야 할까요? (첨부 이미지 참고)
수업 잘 들었습니다. 핵심만 뽑아서 잘 설명해주셔서 이해하기 쉬웠습니다. 감사합니다! 질문 하나 드려요, R for data science로 독학을 했었는데, 거기서는 tibble을 기본으로 설명하던데, 또 어떤 분은 tibble이 장점만 있는 건 아니라고 data frame으로 작업하시더라구요. 튜터님은 data frame으로 작업하시는 걸 선호하시나요. 아니면 tibble 을 선호하시나요? 이유도 설명 부탁드려요.
Sean안녕하세요 효주님, 좋은 질문을 해주셨네요. tibble은 tidyverse라는 패키지에 기반한 데이터 프레임이라고 보시면 됩니다. tidyverse에 익숙하시다면 tibble은 여러 장점이 있지만, 저는 개인적으로는 data frame으로 작업을 하는데요. tibble의 몇가지 한계점을 소개해 드리는 것으로 이유를 대신해보겠습니다. 1. 안정성: tidyverse의 함수가 계속 업데이트 되는 바람에, 사용자도 계속 적응을 해나가야하며, 코드도 변경해야하는 경우가 있습니다. 2. 유연성 3. 호환성: R의 기본 함수와 호환이 잘 안되는 경우가 있습니다. 4. 단순성 데이터 프레임에서는 다음과 같이 끝나는 코드가 df[df$age > 90, ] <- NA tibble에서는 다음과 같이 쓰이지요 df %>% select(x, y, age) %>% mutate_all(~replace(.x, age> 90, NA)) # or df %>% mutate_all(function(i) replace(i, .$age> 90, NA))
말씀 주신 내용들을 보니 확 와닿습니다. 특히 더 간단한 코드 예시도 그렇고, 이제 파이프 모양도 바뀐다는 거 보니, 저도 tibble보다는 데이터프레임으로 깔고 가야겠어요. 감사합니다!

재밌게 듣고있어요 ㅎㅎ 튜터님이 힙하셔서 수업에 더 집중이 잘됩(?)니다 ㅋㅋ 전달력이 좋으셔서 귀에 쏙쏙 들어오고, 커리큘럼도 탄탄해서 금방금방 듣는 것 같은데 중요한 부분들은 다 짚고 넘어가네요. 무엇보다 바로바로 결과물이 나오니까 기분좋은 성취감이 듭니다!!ㅋㅋ R은 되게 어려운 통계프로그램일거라 생각했는데 생각보다 진입장벽이 낮아 왜 진작 안배웠지 싶은 생각까지 들어요 ㅎㅎ 튜터님 아니었다면 R이런 기분 못느꼈겟쥬..? Q&A에 답변도 친절하게 달아주셔서 중간에 막히는 부분 있었는데 다른 분들 질의응답 보면서 해결됐어요. 여러모로 좋은 강의 만들어주셔서 너무너무 감사합니다!

- 퀀트 포트폴리오 매니저, Wavebridge - 시니어 퀀트 리서쳐, Worldquant(글로벌 헤지펀드, 5.5조원 자산 운용) - 초빙 연구원, Weill Cornell Medicine (미국 코넬대 의과대) - 공동창업자, Interview - 탈잉 초창기 인기강사 - 데이터 시각화 전문가, Swizzle Labs - 공동창업자, Dig-out - 대학생 리서쳐, 한국거래소