728x90
반응형

전체 글 117

[프로그래머스]나머지가 1이 되는 수 찾기

공모전이랑 다른 일들때매 바쁘다가 마무리되고 오랜만에 심심해서 코테 안푼 거나 풀어보았다. 코딩테스트 연습 - 나머지가 1이 되는 수 찾기 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 입 programmers.co.kr 예전의 나였으면 수학적인 걸 우선적으로 찾으려 했을텐데 오늘은 귀찮아서 다 돌리다가 나머지 1나오면 되지뭐..하고 코드를 짰다. def solution(n): for i in range(2,n): if n%i == 1: break return i 1부터 시작해버리는 건 의미없어서 2부터 시작~ 굉장히 쉽게 풀렸다.

코딩테스트 2021.12.04

폴더 속 모든 csv파일 하나의 dataframe으로 합치기

import pandas as pd from glob import glob file_names = glob("서울시학원정보(2016~2021)/*.csv") #폴더 내의 모든 csv파일 목록을 불러온다 total = pd.DataFrame() #빈 데이터프레임 하나를 생성한다 for file_name in file_names: temp = pd.read_csv(file_name, encoding='cp949') #csv파일을 하나씩 열어 임시 데이터프레임으로 생성한다 total = pd.concat([total, temp]) #전체 데이터프레임에 추가하여 넣는다

Study/Python 2021.11.29

[Python]for문 돌리면서 루프마다 새로운 변수 선언하기

여러개를 포문돌려서 처리하려는데 매번 새로운 변수를 선언해버리는 방법은 없을까?????????????? 항상 이걸 몰랐다 근데 찾았다. 연도별 아파트매매, 상업업무용 매매에 대한 정보를 합쳐야한다..후 http://rtdown.molit.go.kr/ http://rtdown.molit.go.kr/ rtdown.molit.go.kr 여기서 다운받았다. 2016, 2017년 등등 데이터프레임으로 만들어야하는데 언제 노가다함.. import pandas as pd year = [2016,2017,2018,2019,2020,2021] for j in year: globals()['apart{}'.format(j)] = pd.read_csv(f'./gangseo/{j}아파트매매.csv', encoding='cp9..

Study/Python 2021.11.12

[Python]DataFrame 특정 행에서 원하는 정보만 골라내기

데이터 전처리를 하다보면 하나의 행에서 원하는 값만 뽑아내고 싶을 때가 있다. 대충 예시를 위해 만들어본 csv파일 여기서 1번컬럼에서 J가 들어가는 것들만 뽑아내고 싶다고 한다면? import pandas as pd df = pd.read_csv('test.csv', encoding='cp949') j_df = df[df['1번컬럼'].str.contains('J')] # j_df = df[df['1번컬럼'].str.contains('J', na=False)]

Study/Python 2021.11.12

챔피언 티어정보 만들기

수집한 데이터를 가지고 챔피언들의 티어를 계산하는 코드입니다. 어디서 가중치를 더 줄것인지 혹은 뺄 것인지 정할 수 있고 또 얼마나 더하고 뺄지 산정할 수 있습니다. 기본 틀은 이렇게 되고 사람마다 다 각자 생각이 다르니까 알아서 조정하면서 수정하시면 됩니다. 라인별로 정리했습니다. 라인별 티어 (입력할 라인정보 : 'TOP','JUG','MID','BOT','SUP') import numpy as np import pandas as pd from google.cloud import bigquery from google.oauth2 import service_account from google.cloud import storage import pprint import json credentials = s..

베스트 조합 찾아내는 코드 by CSV

바로 위에 업로드한 코드를 돌려서 생성된 csv 파일을 가지고 가장 승률이 좋은 조합들을 찾는 코드입니다. import numpy as np import pandas as pd from google.cloud import bigquery from google.oauth2 import service_account from google.cloud import storage import pprint import json credentials = service_account.Credentials.from_service_account_file('admin.json') bigquery_client = bigquery.Client(credentials=credentials, project='cslee-323908')..

RiotAPI를 가지고 인게임데이터 csv로 저장하는 자동화 코드

젠킨스와 빅스토리지를 잘 활용하면 계속해서 수집할 수 있습니다. var.txt로 저장된 매치아이디를 통해서 게임정보를 불러오고 csv로 저장함 from google.cloud import bigquery from google.oauth2 import service_account from google.cloud import storage import pandas as pd from datetime import datetime import csv from datetime import datetime import os # 인게임 데이터가져와서 팀조합, 포지션 모으는 함수 def combi_position(ingame): df3 = pd.DataFrame({'Win': [], 'Lose': [], 'Win_Po..

포지션정보넣으면 승률+밴픽률순서로 출력

롤의 포지션별로 승률과 밴픽률을 합산하면 어떤 챔프가 좋은 챔프인지 알 수 있지 않을까? 라는 생각으로 만들어본 코드 만들면서 생각하지 못했던 부분은 ban_rate는 전체챔프가 다들어있어서 편향되는 경우가 많았다. 일단 값을 승률에 비해서 1/100로 줄였다. from google.cloud import bigquery from google.oauth2 import service_account from google.cloud import storage import ast import pandas as pd import numpy as np import pyarrow credentials = service_account.Credentials.from_service_account_file('admin.js..

728x90
반응형