[파이썬] 리스트 원소를 랜덤하게 썪는 방법 (random.shuffle)
아래와 같은 리스트가 있습니다. a=[1,2,3,4,5,6,7,8,9,10] 순서를 랜덤하게 섞어봅시다. random 패키지의 shuffle 함수를 사용합니다. >>> import random >>> random.shuffle(a) >>> a [5, 8, 1, 2, 4, 9, 3, 6, 10, 7] 리스트 a가 랜덤하게 섞인 것을 알 수 있습니다.
2023. 5. 2.
[파이썬] 문자열로 된 리스트를 정수 또는 실수로 변환
문자열 리스트를 정수로 변환 아래와 같이 정수가 문자열로 표현되어 있는 리스트가 있습니다. data=['1','2','3','7'] 원소를 정수로 바꿀 때는 map 함수를 사용합니다. >>> data_r = list(map(int, data)) >>> data_r [1, 2, 3, 7] 문자열 리스트를 실수로 변환 아래와 같이 실수가 문자열로 표현되어 있는 리스트가 있습니다. data=['1.4','2.6','3.6','7.7'] 원소를 실수로 바꿀 때는 map 함수를 사용합니다. >>> data_r = list(map(float, data)) >>> data_r [1.0, 2.0, 3.0, 7.0]
2022. 5. 20.
[파이썬 판다스] 데이터 프레임 합치기 (열 이름 같은 경우)
열 이름이 같은 데이터 프레임을 두개 정의합시다. import pandas as pd #데이터프레임 생성 df1=pd.DataFrame({'name':['Kim','Park','Lee'],'height':[177,175,166]}) df2=pd.DataFrame({'name':['Chun','Kang','Choi'],'height':[156,182,158]}) 각 데이터프레임은 아래와 같습니다. >>> df1 name height 0 Kim 177 1 Park 175 2 Lee 166 >>> df2 name height 0 Chun 156 1 Kang 182 2 Choi 158 두 데이터프레임을 합칠 때는 concat 함수를 사용합니다. df_total=pd.concat([df1,df2]) >>> df_..
2022. 3. 10.
[파이썬 판다스] 시리즈에서 데이터를 분할표로 만들기 (unstack)
독립변수가 2개이고, 종속변수는 1개인 데이터를 하나 정의합시다. 독립변수는 지역, 성별이고 종속변수는 인구수 입니다. import pandas as pd import numpy as np #데이터 생성 sr1=pd.Series([50,50,30,30,20,20], index=[['서울','서울','경기','경기','제주',"제주"],['남자','여자','남자','여자','남자','여자']]) >>> sr1 서울 남자 50 여자 50 경기 남자 30 여자 30 제주 남자 20 여자 20 dtype: int64 위 데이터를 분할표로 만들 때는 unstack 메소드를 사용하면 됩니다. >>> sr1.unstack() 남자 여자 경기 30 30 서울 50 50 제주 20 20 자료형을 확인해봅시다. 데이터프레..
2022. 2. 24.
[파이썬 판다스] 시리즈에서 인덱스 여러 층으로 정의하기 (계층적 인덱스)
독립변수가 두개 이상인 자료를 표로 정리해야하는 경우가 있습니다. 예를들어 독립변수가 거주지, 성별이고 종속변수가 인구 수인 경우를 생각해봅시다. 독립변수 : 거주지, 성별 종속변수 : 인구 수 표로 정리하면 아래와 같습니다. 파이썬 시리즈에서 위 표를 정의해봅시다. import pandas as pd import numpy as np #데이터 생성 sr1=pd.Series([50,50,30,30,20,20], index=[['서울','서울','경기','경기','제주',"제주"],['남자','여자','남자','여자','남자','여자']]) 인덱스를 2차원 리스트로 정의하면 됩니다. 결과는 아래와 같습니다. >>> sr1 서울 남자 50 여자 50 경기 남자 30 여자 30 제주 남자 20 여자 20 dt..
2022. 2. 24.
[파이썬] 문자열 구분기호로 리스트 변환할 때 공백 없애는 법
아래와 같이 콤마로 구분된 문자열이 있습니다. str='a,b,c,d, e' >>> str 'a,b, c,d, e' 구분기호로 분리하여 리스트로 만들 때는 split 메소드를 이용하면 됩니다. >>> str.split(',') ['a', 'b', ' c', 'd', ' e'] 이때 공백이 포함되는데요. 아래와 같이 for문을 이용하여 각 원소에 포함된 공백을 제거할 수 있습니다. >>> [x.strip() for x in str.split(',')] ['a', 'b', 'c', 'd', 'e'] x대신 다른 문자를 사용해도 결과는 같습니다. 임의의 변수명입니다. >>> [i.strip() for i in str.split(',')] ['a', 'b', 'c', 'd', 'e']
2022. 2. 11.