본문 바로가기

전체 글307

pandas 데이터 변환 / transform() - 누락값 평균값으로 채우기 - 표준점수 : 데이터의 평균과 표준편차의 차이 > 표준점수를 구하면 변환한 데이터의 평균값이 0이 되고 표준편차는 1이 됨. >> 데이터가 표준화되어 서로 다른 데이터를 쉽게 비교할 수 있게 됨. ▶ 그래서 연도별 lifeExp 열의 표준점수를 계산함. 사용자정의함수를 적용하기 위해 transfrom메서드를 사용 - transfrom 함수 : https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.transform.html - my_zscore는 표준화할뿐 집계는 하지 않아서 데이터 양이 줄어들지 않음. 확인하기 위해 크기 확인 - tips 데이터 집합에서 10개의 행 데이터만 가져온다음 total_bill 열의 값 4개를 임의로 선택하여 누락값으.. 2023. 7. 14.
pandas groupby 메서드로 집계 메서드 사용하기(agg포함) 수집한 데이터를 바탕으로 평균/합 등을 구하여 값을 도출해 내는 것 - 전체 데이터를 요약, 정리하여 볼 수 있기 때문에 분석이 훨씬 편해진다. - groupby 메서드로 평균값을 구하는 과정을 통해 데이터 집계가 무엇인지 알아보기 ▼ year 열을 기준으로 데이터를 그룹화한 다음 lifeExp 열의 평균을 구한 것. △△△△위에서 groupby메서드가 어떤 과정을 통해서 집계되는지 알아보기▼▼▼▼▼ 1. year 열의 데이터를 중복없이 추출한 것. groupby 메서드에 열 이름을 전달하면 이런 '분할'작업이 먼저 일어난다. 2. 연도별 평균값 구하기. ▶ 그러기 위해서 각 연도별 데이터를 추출, 1952년의 데이터를 추출한 것이다. - 이 과정을 '반영' 작업의 한 부분 3. 위에 2번에서 추출한 1.. 2023. 7. 13.
아두이노 더보기 #define BRIGHT_PIN A1 #define BRIGHT_ON 3 #define BRIGH_OON 5 void setup(){ Serial.begin(9600); pinMode(BRIGHT_ON, OUTPUT); pinMode(BRIGH_OON, OUTPUT); } void loop(){ int brightValue = analogRead(BRIGHT_PIN); Serial.println(brightValue); if (brightValue >= 800) { Serial.println("어둡습니다."); digitalWrite(BRIGHT_ON, 255); digitalWrite(BRIGH_OON, LOW); } else if (brightValue < 800 && brightValue .. 2023. 7. 12.
python opencv 설치 / 이용 및 데이터 전처리 - OPENCV / cv2 설치하기 ▶ pip install opencv-python 이라는 명령어로 설치하면된다. 그리고 사용할때 import cv2 라고 하면 사용가능. cv2.warpAffine (아핀변환) - cv2.flip(이미지, 대상 축)으로 회전도 가능. 인수가 0일때는 x축 중심, 양수일때는 y축 중심, 음수일때는 두 축을 중심으로 반전 2번째 인자를 COLOR_RGB2GRAY ( rgb to gray)로 하면 흑백 이미지로 가능. threshold(처리하는 이미지, 임곗값, 최댓값(maxvalue), 네번째 인수 종류는 5가지중 하나) -> 네번째 인수 1. THRESH_BINARY : 픽셀값이 임곗값을 초과하는 경우해당 픽셀을 maxValue로 하고, 그 외 경우에는 0(검은색)으로 .. 2023. 7. 12.
아두이노 시리얼통신 / 버튼데이터 / 가변저항값 / CDS조도센서 #define LED_RED 5 #define LED_GREEN 6 #define LED_BLUE 11 void setup(){ Serial.begin(9600); pinMode(LED_RED,OUTPUT); pinMode(LED_GREEN,OUTPUT); pinMode(LED_BLUE,OUTPUT); } void loop(){ if (Serial.available() > 0) { char readData = Serial.read(); if (readData == 'r') { digitalWrite(LED_RED, HIGH); digitalWrite(LED_GREEN, LOW); digitalWrite(LED_BLUE, LOW); } else if (readData == 'g') { digitalWrit.. 2023. 7. 11.
데이터 클렌징 NaN 처리/mapping / cut / 연습문제 - 리스트와이즈 삭제 (listwise deletion) : 데이터가 누락된 행(NaN을 가진 행)을 통째로 지우는 것. NaN이 있는 행은 모두 삭제된다. (225행) - 페어와이즈 삭제(pairwise deletion) : 사용가능한 데이터만 활용하는 법. 결손이 적은 열만 남기는 것. ( 226행) : 원하는 열의 인덱스값을 인자로 전달해주고 dropna() 를 한다면 전달한 인자값의 인덱스 열은 살고 나머지는 다 지워지지지만 남아있는 열의 중 NaN이 있는 행값은 삭제된다. - 공통의 키 역할을 하는 데이터의 값을 가져오는 처리. - 정한 컬럼을 기반으로하여 대응하는 컬럼을 새로 추가함. = > 이것이 매핑 처리 - 딕셔너리의 key와 지정한 열의 값이 같으면 새로운 딕셔너리의 value가 열로 .. 2023. 7. 11.
아두이노 조명/피에조분저 출력하 (전기는 + 에서 - 쪽으로 흐르기때문에) 보드에서 전기가 나오는 쪽 > 13번으로 나와서 > GND로 돌아오는것 5V는 너무 크기때문에 중간에 저항을 달아준것 13번에만 전기를 보냈기때문에 13번 코드?에서만 불이 나오는것 '+를 여기에 인가했다' > 라고 말한다. - 주파수 음게를 출력해서 소리를 출력하게 할 수 있다. 2023. 7. 10.
CSV 파일 만들기 1. csv 라이브러리로 만들기 >>> csv0.data로 저장해도 안에 내용이 콤마로 나누어진 파일이니 저장이 가능하고 불러올 수 있다. >> https://dev-adela.tistory.com/25 파일처리 1. 파일 열고 닫기 a. open() : 파일 열때 ▶ 파일 객체 = open(문자열: 파일 경로, 문자열: 읽기 모드) 모드 실행 w write 모드 (새로쓰기) ▷ 없으면 새로 만들고 있으면 덮어씀 a append 모드 (뒤에 이어서 dev-adela.tistory.com 2.판다스로 하기 > 주로이걸로했 2023. 7. 10.
pandas apply와 lambda 만남으로 데이터 가공 - 세상에 만상에 최근에 apply를 공부했고, lambda는 원래 알던 아이였지만 둘이 친한줄 몰랐다 배신감 - apply 함수에 lambda식을 결합해 데이터를 가공할 수 있는 기능을 제공한다. (판다스가) ▶ DataFrame의 lambda 식은 이렇게 식을 그대로 적용한 후 apply에 적용해 가공해볼 수 있다. ▶ lambda if문을 써서 사용할 수도 있다. ▷그래서 15세 이하면 Child, 그 외에는 Adult로 구별하는 열을 추가해봤다. ▷ 여기서 한번 짚고 넘어가는 lambd 식 ● lambda x(입력인자) : x **2 (입력인자를 기반으로 한 계산식, 호출 시 계산 결과 반환됨) ● lambda x : 'Child' if x 2023. 7. 7.