분류 전체보기 36

판다스 데이터프레임을 읽고 저장할때 인덱스 컬럼의 처리

판다스 데이터프레임은 행마다 0부터 인덱스 번호를 자동으로 붙혀준다. 만약 데이터 자체에 인덱스가 있어 별도의 인덱스 번호가 불필요 하다면, csv를 읽어올때 index_col=0 매개변수를 지정해 주면 된다. # csv 화일에 인덱스가 이미 있다는 것을 알려주려면 index_col 매겨변수를 사용한다. df = pd.read_csv('filename.csv', index_col=0) 데이터프레임을 csv 화일로 저장시, 데이터프레임의 인덱스를 포함시키지 않으려면, index=False 매개변수를 추가해준다. df.to_csv('filename_NoneIndex.csv', index=False)

DtypeWarning: Columns have mixed types (Pandas read_csv)

판다스에서 read_csv 로 csv 화일을 읽어올때, import pandas as pd df = pd.read_csv('filename.csv') 아래와 같이 DtypeWarning: Columns have mixed types 경고가 발생하는 경우가 있다. Warning 가 발생하여도 이후 데이터를 읽지 못하는 것은 아니다. :8: DtypeWarning: Columns (5,6,9) have mixed types. Specify dtype option on import or set low_memory=False. df = pd.read_csv('filename.csv') 원인은 Columns have mixed types 이란 표현 그대로, 데이터 유형이 혼합되어 있는 열(column)이 있다는 ..

파일 인코딩 형식 확인 - chardet.detect() 함수

with open('화일명.csv') as f: print(f.readline()) UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb9 in position 0: invalid start byte 위와 같이 csv 화일을 readline()로 읽을때, 인코딩이 맞지 않으면 UnicodeDecodeError 오류가 발생한다. open() 함수는 기본적으로 UTF-8로 읽는다. 이런 오류가 발생시 인코딩 포맷을 먼저 확인해보아야 한다. 이때 사용하는 것이 chardet.detect() 함수이다. chardet.detect()는 주어진 바이트 데이터의 문자 인코딩을 판별하여 어떤 인코딩을 사용하는지에 대한 정보를 제공한다. import chardet # 감지할..

Python에서 Google Drive 파일 다운로드 (gdown 패키지)

gdown 패키지는 Google Drive에 업로드된 파일을 다운로드하기 위한 패키지이다. 코랩에서 gdown 으로 다운로드하면 코랩 파일에 바로 등록된다. 로컬에 저장되는 것이 아니다. 단, 코랩 이외의 환경에서는 테스트해보지 못했다. pip install gdown gdown.download 함수를 사용하여 Google Drive에서 파일을 다운로드할 수 있다. import gdown # Google Drive에서 파일의 ID를 얻습니다. file_id = 'your_file_id' # 다운로드할 파일의 이름을 설정합니다. output_file = 'output_file_name.ext' # gdown.download를 사용하여 파일을 다운로드합니다. gdown.download(f'https://dr..

가중치 적용

가중치 적용에 대한 개념이 잘 설명된 글이다. https://blurblah.net/1126 Random number와 가중치를 고려한 추첨기능 구현하기 | Blurblah's Blog Random number와 가중치를 고려한 추첨기능 구현하기 Posted 2014/05/14 by blurblah 이 글이 작성된 해는 2014년도입니다. 최근(2016년 ~) 유행하고 있는 추천서비스 등과는 관련이 없는 내용이고 개인적인 필요에 의해서 뭔가 실험하고 작성한 내용이에요. 방문자가 별로 없는 블로그이지만 검색 등을 통한 이 글로의 유입량이 많아서 혹시 오해가 있을까하여 미리 밝혀둡니다. 복수의 아이템이 들어있는 자료구조에서 추첨을 해야하는 blurblah.net (자세한 구현 설명은 차후에....)

iOS & Swift 2020.02.06

Git 관련 정리 (정리중)

협업에서 Git 이용하기도 하지만 명령어를 직접 사용할 기회는 없었다. 한번 알고 돌아서면 잊어비리는 통에 약간의 시간을 할애해서 실습을 통해서 정리해 보았다. http://git-scm.comhttps://git-scm.com/book/ko/v2 주요 Git 명령어git --versiongit config --global user.name "이름" Git 을 Commit 할때마다 Commit 하는 사용자의 정보가 된다.git config --global user.email "이메일" git init : 해당 위치에 새로운 저장소를 만든다. init 명령어로 저장소를 생성하였다.branch master 로 표기가 된 것을 볼 수 있으며, 현재 저장소에서 작업중인 브랜치가 master 브랜치임을 의미한다...

Git 2017.07.21

Realm 요약 정리 (작성중)

Realm 소개 기사 요약http://www.bloter.net/archives/208063- 렘은 2014년 7월 iOS를 위한 DB를 처음 공개. 9월28일에는 안드로이드를 위한 모바일 DB 공개- 네이버 ‘데뷰2014’ 개발자 행사에 참여해 직접 렘을 소개 (https://deview.kr/2014/session?seq=32)- 렘을 활용하면 SQL을 몰라도 API를 호출하면서 모바일 DB를 관리. 렘은 기존 모바일 DB인 ‘ORM라이트’, ‘그린DAO’, ‘코어데이터’ 등과 비교해 좀 더 간단한 API를 제공.- Realm은 오브젝트 기반 API를 통해 범용적으로 크로스 플랫폼과 메모리 매핑을 지원하는 thread-safe 데이터 표현을 제공하기 위해 (SQLite가 아닌) 완전히 새로운 형태의 ..

iOS & Swift 2017.04.28

코웨이 IoT IoCare 아이폰 앱

코웨이 IoT IoCare 아이폰 앱 2016. 5 ~ 2017. 4 https://appsto.re/i67c9NQ - 코웨이 정수기, 공기청정기 제품 연동 (제품의 상태, 정보 확인 및 원격 제어) - Wifi 제품의 페어링 - 실.내외 공기질 정보와 분석 정보 제공 - 유저별 물 음용 현황 및 가이드 제공 - IoCare 제품의 전원 On/Off 는 물론, 동작 모드와 예약 설정 등 공간의 제약 없이 컨트롤 가능 - 제품의 이상시, 집 환기가 필요할 때 Push 제공