본문 바로가기

전체 글

[Python] 넘파이 정수/실수 배열 얻기: arange(), linspace() 정수의 배열을 얻고자 할때 - 0부터 9까지 정수를 만드세요. numpy.arange( , ) np.arange(start,stop,step) - range() 함수와 사용법이 똑같다. 실수의 배열을 얻고자 할 때 - ex)0부터 25까지의 실수 10개를 가져오세요 numpy.linspace(몇부터, 몇까지, 개수, 끝 포함여부(포함: True, 불포함:False)) 몇부터 몇까지 개수만큼 몇 등분해서 보여준다는 뜻. 더보기
[Python] 넘파이 저장/불러오기/특정값 만들기: save,load,zeros(),ones(),full() 저장 및 불러오기: Save and Load data - 저장: 해당 작업하고 있는 파일의 루트에 넘파일명으로 저장된다. np.save('my_array', D) 넘파이.save(‘저장 파일명’, 넘파이 데이터) - 불러오기: 주피터 노트북이랑 같은 루트에 있으니까, 그대로 불러온다. np.load('my_array.npy') (계속 작업하고 싶으면 메모리에 저장해둔다.) 넘파이로 0/1/특정값인 행렬만들기: numpy.zeros(), numpy.ones(), numpy.full( , ) - ex) 3행 4열짜리, 데이터가 0으로 되어있는 행렬 - 원시적인 방법: [[0,0,0,0],[0,0,0,0],[0,0,0,0]] - 넘파이로 만들기: zeros는 0으로 만들라는 뜻, float으로 처리된다. 튜플.. 더보기
[Python] Numpy 넘파이 개념 Numpy - 다차원 배열을 처리할 수 있는 선형대수학 라이브러리. (만약 실행이 안될경우 아나콘다 프롬프트에서 conda install numpy를 실행하여 설치한다. - 왜 배우는가? 고객 데이터 정리(ex : 이메일, 비번, 성별, 주소, 월결제금액, 가입날짜등등) - 행과 열이 있다. 그것이 데이터이며, 데이터는 행, 컬럼은 속성이다. 1차원 -> 리스트 2차원 배열 = 행렬(행:row, 열: column) 3차원 배열 -> 이미지 (R,G,B) shape -> 모양, 1차원 shape: 튜플, 튜플은 데이터 하나만 쓰면 안되니까, 숫자 하나 쓰고 콤마 씀 ex) (4,) 2차원: shape: 행부터, 그다음에 열 (2,3) -> 2행, 3열 # 1차원 배열은 = 벡터(Vector),라고도 불리운.. 더보기
[Python] 라이브러리(날짜/시간관련): datetime, weekday() , isoformat(), strftime(),today(),now(),gmtime(), localtime(),parser, relativedelta statistics 라이브러리의 평균값과 중앙값 ㄴ 통계 라이브러리 ㄴ 평균값: .mean() ㄴ 중앙값: 먼저, 데이터를 정렬한 후, 가운데 있는 값: .median() 날짜와 시간 ㄴ 날짜 관련 라이브러리: datetime from datetime import date ㄴ from은 파일명을 불러올 때 사용한다. ㄴ .(점)뒤에 괄호가 없는 건 속성이라고 함. date = 데이터 타입 date.weekday() -> {0: 월, 1: 화, 2: 수, 3: 목, 4: 금, 5: 토, 6: 일} 사람용으로 날짜 보이게 하는 방법1: 날짜 데이터 변수. isoformat() -> '-(하이푼)'이라는 뜻이 iso 사람용으로 날짜 보이게 하는 방법2: 날짜 데이터 변수. strftime(표시 형식) -> 날.. 더보기
[Python] 라이브러리:난수(int,float), seed(), choice(),sample(), shuffle() 라이브러리: 함수들이 모아놓은 거, 함수들의 묶음. # 라이브러리는 외우는 게 아니다. 그냥 이런게 있다는 것만 알고 있어라 난수 생성하기 - Random Number 0.0~1.0 사이 난수 생성 ㄴ random.random() import random random.random() ㄴ import: random이는 라이브러리를 사용하겠다는 뜻 ㄴ random.random(): 왼쪽은 라이브러리이고, 오른쪽은 함수라는 뜻 ㄴ random 라이브러리에 함수가 많다. 그 중에 하나가 random. ㄴ 0과 1사이에 무작위로 데이터를 가져오는 것. int형의 난수 생성 import random random.randit(0,1) random.randit(범위 시작, 범위 끝 int형) float형의 난수 생성 .. 더보기
[Python]판다스 데이터 정렬, 저장/불러오기:sort_values(), pd.read_csv(), pd,read_excel(), pd.to_csv() 데이터 정렬 - Sorting and Ordering - 판다스 데이터프레임 변수명[컬럼명]. sort_values(컬럼명) ㄴ 기본적으로 오름차순으로 설정이 되어있다. ㄴ ex) 경력을 오름차순으로 정렬 - 내림차순: ascending=False Ex) 이름으로 먼저 정리하고, 이름이 같을 경우에는, 경력으로 정렬 Ex) 이름과 경력으로 정렬하되, 이름은 내림차순, 경력은 오름차순으로 정렬! csv로 저장/불러오기/처리 - csv : comma separated values => 데이터는 콤마로 구분합니다. - csv의 규칙! 맨 위의 행은, 컬럼명을 적어줍니다. - 불러오기: df = pd.read_csv('my_test.csv') ㄴ unnamed 없애는 방법: 방법1 (불러오고나서): df.dro.. 더보기
[Python] 판다스 오퍼레이션: &, |, apply(함수명) 판다스 오퍼레이션 - Pandas Opertations - 엄청 중요! - 데이터는 행이다. Ex) 경력이 3년 이상인 사람의 데이터를 가져오시오 - 경력이 3년 이상인 행 - 결과가 Ture, False로만 나와서, iloc는 사용불가 - loc[행,렬] - 데이터는 행 - df[ df['Years of Experience']>=3 ] ㄴ 이렇게 해도 되지만, 나중에 헷갈리므로, 이렇게 쓰지 않기를 권장한다. Ex) 경력이 3년 이상인 사람의, 이름과 시급 정보를 가져오시오 df.loc[ df['Years of Experience']>=3 , ['Employee Name','Salary [$/h]'] ] - 조건문과 비교 기호는 같다. ㄴ 다만, ‘and’와 ‘or’는 다르게 표기한다. ㄴ and =>.. 더보기
[Python] 판다스 카테고리컬 데이터: nunique(), unique(),Agg(), groupby, count(), value_counts() 카테고리컬 데이터 (Categorical Data) - 반복해서 묶음으로 처리할 수 있는 데이터 - 이메일은 카테고리컬 데이터가 아니다. - 똑같이 만들수 없는 것을 ‘유니크하다’라고 한다. - 카테고리컬 데이터가 정해져 있음 - 고유한 값이 몇개인지 계산: 판다스 데이터프레임 변수명[컬럼명].nunique() ㄴ n은 넘버라는 뜻 - 고유한 값이 무엇인지 추출: 판다스 데이터프레임 변수명[컬럼명].unique() ㄴ 고유한 값을 내놓는다. *주의할 점: nan 도 값에 포함한다. -> nunique()에서도 nan값을 포함한 수치로 계산된다. 카테고리컬 데이터의, 각 데이터별로 묶어서 처리하는 방법 ㄴ '~별로'하면 groupby()함수를 이용하라 ㄴ ‘~에 따른’ 도 groupby() 함수 판다스 데.. 더보기