Data Science/Python
-
[Python] 문자열 한 글자씩 자르기Data Science/Python 2021. 5. 19. 23:47
파이썬에서 문자열을 나눌 때는 split을 사용할 수 있다. .split() 이렇게 괄호 안에 아무것도 없을 때는 공백을 기준으로 나눠주고 .split(',') 괄호 안에 특정 값을 넣어주면 그것을 기준으로 문자열을 나눠준다. "I am Groot".split(' ') "apple,banana,mango,cherry".split(',') 하지만 문자열이 한 글자씩 나눠져 들어있는 리스트가 필요했고, 그 방법을 찾아보다가 list()를 발견했다. 아래와 같이 간단하게 list()의 괄호 안에 문자열을 넣어주면 한 글자씩 나눠진 문자열이 담긴 리스트를 돌려준다. list("I am Groot") 데이터 타입이 문자열인 숫자도 마찬가지로 나누기가 가능하다. list("01012345678") 단순히 list(..
-
[Python] 파이썬 자료형 - 리스트(List)Data Science/Python 2021. 3. 11. 22:22
Python 컬렉션 자료형 - 리스트(List) 파이썬 컬렉션 자료형은 특징에 따라 리스트(List), 튜플(Tuple), 딕셔너리(Dictionary)로 구분할 수 있습니다. 여기서 컬렉션 자료형은, 만약 문자열이나 숫자형이 a = 12, b = 'apple' 등과 같이 하나의 값을 가진다고 한다면 c = [1, 3, 5, 7, 9]와 같이 여러 개의 값을 저장할 수 있는 자료형을 컬렉션 자료형이라 말합니다. 이번에는 컬렉션 자료형 중 가장 많이 쓰이는 리스트에 대해서 알아보겠습니다. 먼저 리스트는 [ ]로 표시할 수 있으며 , 로 구분해줍니다. a = [] b = [1, 2, 3, 4, 5] c = ['apple', 'orange', 'lemon', 'banana'] d = [1, 2, 'apple'..
-
[Python] tidy data, wide data 만들기 ( .melt, .pivot_table )Data Science/Python 2021. 1. 11. 23:41
라이브러리에 따라 다른 형태의 데이터를 필요로 하는데 seaborn 라이브러리는 tidy 형태의 데이터를 필요로 합니다. 먼저 데이터를 만들어 주겠습니다. %matplotlib inline import pandas as pd import numpy as np import seaborn as sns table1 = pd.DataFrame( [[np.nan, 9], [20, 50], [13, 11]], index=['X', 'Y', 'Z'], columns=['A', 'B']) 이렇게 wide 형태의 데이터를 제공합니다. 추가로, transpose()를 이용하면 동일한 결과이지만 행과 열이 전치된 데이터를 만들 수 있습니다. table2 = table1.transpose() tidy > p..
-
[Python] pandas로 데이터 합치기(concat, merge)Data Science/Python 2021. 1. 7. 00:24
효과적으로 데이터를 분석하기 위해서는 데이터셋을 하나로 합치는 것이 필요한데요, pandas를 통해 데이터를 합치는 두가지 방법입니다! 먼저 pandas 라이브러리를 불러와 주고 import pandas as pd 1. concat 행을 기준으로 concat ( default값으로 axis = 0 적용 ) pd.concat([df1,df2]) 열을 기준으로 concat pd.concat([df1, df2], axis = 1) 행의 인덱스 번호도 그대로 가져왔을 경우, ignore_index = True 를 이용해서 인덱스를 재배열할 수 있습니다. pd.concat([df1,df2], ignore_index = True) concat에서 join = 'outer' 를 default 값으로 가지기 때문에, ..
-
[Python] 문자를 숫자로, 형변환하기(.replace, .to_numeric)Data Science/Python 2021. 1. 4. 19:01
12,345 + 67,890 = 80,235 가 되어야 하지만, 12,34567,890 이 나오는 경우! 이런 문제는 1. 숫자가 아닌 부분을 제거하기 2. 문자를 숫자로 형변환하기 위의 방법을 통해서 해결할 수 있습니다. 1. 숫자가 아닌 부분을 제거하기 - replace를 이용하여 숫자가 아닌 부분을 공백으로 대체하기 .replace("삭제할 글자", ' ') 2. 문자를 숫자로 형변환하기 - 숫자가 아닌 부분을 제거하고 난 뒤, integer로 형변환 해주기 int() + 함수를 만들어 적용하기 def toInt(string): return int(string.replace(',', '')) toInt('12,345') 위에서 만든 toInt 함수를 column 단위로 적용할 수 있어요 df['co..
-
[Python] 데이터 결측치(NaN) 제거, 대체하기Data Science/Python 2021. 1. 3. 01:33
NaN는 Not a Number의 줄임말로 pandas에서 결측치를 표현하는 방법입니다. NaN은 프로그래밍상 float라는 type을 갖고 있습니다. 이러한 데이터의 결측치를 처리하기 위한 제거하거나 대체하는 방법입니다! 1. 결측값을 제거하는 방법 결측값이 포함된 행을 제거 df.dropna() df.dropna(axis=0) 결측값이 포함된 열 제거 df.dropna(axis=1) ()안에 inplace를 써주면 지정하는 것과 같은 결과 - 아래 두 코드의 결과 동일 df = df.dropna() df.dropna(inplace = True) 2. 결측값을 대체하는 방법 결측값을 0으로 대체 df.fillna(0) 결측값을 평균값으로 대체 df.fillna(df.mean())
-
[Python] 판다스(pandas)로 데이터 불러오기, Colab에 파일 업로드하기Data Science/Python 2021. 1. 2. 01:46
판다스는 데이터 분석을 위한 다양한 기능을 제공하는 파이썬 라이브러리입니다. 판다스는 파이썬 언어만 사용할 수 있어도 데이터 분석을 할 수 있는 장점을 가지고 있습니다. 먼저, 판다스를 이용하기 전에 판다스를 import 해주어야 합니다. import pandas as pd 판다스를 이용해서 데이터를 불러오기 위해서 1. csv 파일 pd.read_csv() 2. 엑셀 파일 pd.read_excel() 3. 클립보드에 있는 파일 pd.read_clipboard() 4. url을 통해 불러올 파일 url = "https://_____.xlsx" df = pd.read_excel(url) 데이터를 불러온 후, 데이터의 행과 열의 크기는 .shape을 통해서 df..