유용한 코드

1. numpy

1) 순위를 알고 싶을때(값이 큰게 1위, 순위는 0부터시작이라 추가적으로 1을 더함)

(np.argsort(np.abs(eigen[0, :]))[::-1] + 1)

2. pandas

1) 데이터 프레임 인덱스 주어줄때 다중인덱싱

  • 인덱스가 2개로 [앞줄 인덱스, 뒷줄인덱스]
  • 앞줄의 경우 정의한 변수를 가져온다면, ‘1’, ‘2’를 하나의 인덱스로 가지고 있어서 sorted(list(range(6)) * 2)에서 2를 곱해준다.
    pd.DataFrame(테이블명,index=[[age_dict.get(str(x)) for  x  in  sorted(list(range(6)) * 2)],['1', '2'] * 6], columns=컬럼명)
    
  • 예시 결과 image

2) 딕셔너리를 데이터프레임으로 바꿀때

  • orient를 사용하지않으면 인덱스 지정안한 것
    pd.DataFrame.from_dict(테이블, orient='index', columns=컬럼명)
    

    3) 다중 인덱스 이름변경

  • 인덱스 변경할 명
  • level=1 이름을 바꿀 열의 레벨
    df.columns.set_levels(['b1','c1','d1'],level=1,inplace=True)
    

3. csv에서 많은 변수의 이름을 불러올때

  • CSV 파일이 밑의 표형식일 경우,
A B
데이터1 데이터1설명
데이터2 데이터2설명
#딕셔너리 만들어서 불러오기
codedict = {}
for  i  in  range(len(codename)):
	codedict[codename[['A', 'B']].iloc[i][0]] = codename[['A', 'B']].iloc[i][1]
  • 특정 단어나 기호 등을 대체하고 싶다면,
    for  key, value  in  codedict.items():
      if  '/'  in  value:
          codedict[key] = value.replace('/', '_')
    
  • 영어로 된 변수명을 codedict를 이용해서 한글 변수명으로 바꾸는 법
    target = '변수명'
    codedict.get(target)
    
  • 함수생성할때 이름도 가져오고 싶다면
    def  percentile(n):
      def  percentile_(x):
          return  np.percentile(x, 25 * n)
      if  n == 2:
          percentile_.__name__ = '중앙값'
      else:
          percentile_.__name__ = '%s분위수' % n
      return  percentile_
    

    image

4. 파일 불러올때

1) 해당 폴더에서 여러 파일 불러올때

file_list = os.listdir('D:\\~~') #또는 os.listdir('./')
folder_dict = sorted([x  for  x  in  file_list  if  조건 ])
folder_dict

2) 여러 폴더에서 지정하여 파일 부르고 싶을때

data_dir = 'D:\\~~'
file_list = os.listdir(data_dir)
file_list = [x  for  x  in  file_list  if  not  x.endswith('.txt')]

folder_dict = {x:[] for  x  in  file_list} # 폴더 이름 사전

'''딕셔너리형태로 폴더명:[csv파일,...]'''
folder_list = {x : sorted(os.listdir(data_dir + '/{}'.format(x))) for  x  in  folder_dict.keys()} 
'''혹시 폴더안에 csv파일 외에 다른게 있다면'''
folder_list = {x : [t  for  t  in  y  if  t.endswith('csv')] for  x, y  in  folder_list.items()}
folder_list.keys() #원하는 시각화 폴더 파일

type='폴더 파일 입력'
file_list= [x  for  x  in  folder_list[type]]

5. 간편한 스킬

1) 딕셔너리를 이용하자!

sample={'A':['apple', 'ant', 'app'],
		'B':['blue','busy','board']}
sample.get(some)

6. union 사용

많은 변수를 이용할 때, 모든 변수를 사용하기위해 사용하는 함수

all_predictors = set()

for  x  in  index_variables.values():  #index_variables: 딕셔너리에서 VALUE가 리스트인 형태!!
	all_predictors = all_predictors.union(set(x))
all_predictors = sorted(all_predictors)
all_predictors

태그:

카테고리:

업데이트:

댓글남기기