본문 바로가기
반응형

공부381

[pandas] groupby 에 컬럼별로 count, sum, mean 하기 컬럼별로 데이터를 조정하고 싶을 때 사용할 수 있다. 데이터 샘플은 캐글에 있는 타이타닉의 train.csv 로 했다. 받으러 가기 번거로우니 여기에 파일추가 import pandas as pd df1 = pd.read_csv('data/titanic.csv') df1.head() 단순 groupby 를 사용하면 모든 컬럼이 적용된다. df1.groupby('Survived').count() 이번엔 Servived를 기준으로 Pclass는 갯수를, Age는 평균을 Fare는 최대값이 나오도록 설정했다 df1.groupby('Survived').agg({'Pclass': 'count','Age':'mean', 'Fare':'max'}) 끝. 2019. 10. 8.
[pandas] 날짜 문자열을 datetime 형태로 변경 string 형태로 사용해도 문제가 없다면 써도 상관없겠지만, 시계열쪽을 하려면 미리 가공하는 연습을 해두는게 좋을듯 하다. import pandas as pd from pandas import DataFrame data = [['눈을감자','2019-10-01 11:12:35','2500'], ['진라면','2019-10-03 12:15:30', '1000'], ['1회용 면도기','2019-10-06 13:30:21', '300']] # data를 DataFrame 형태로 변경 d1 = DataFrame(data, columns=['종류','구매일자','금액']) d1 종류구매일자금액 0눈을감자2019-10-01 11:12:352500 1진라면2019-10-03 12:15:301000 21회용 면도기.. 2019. 10. 6.
[Springboot] spring bean과 싱글톤(singleton) 일정시간마다 데이터를 정재하는 스케쥴이 실행된다. 해당 스케쥴을 실행하기 위해 Service Bean 을 수행하는데 초반에는 별 문제가 되지 않았다가 최근 데이터가 늘어나면서 점점 처리속도가 느려지기 시작했다. 그래서 Schedule 수행 시간을 늘려 처리하려 했지만, 이전 스케쥴러 실행이 종료되지 않을 경우, 새로 만든 스케쥴러가 실행되지 않았다. 그리고 이전 스케쥴러가 끝난 후에야 새로만든 스케쥴러가 수행되기 시작했다. (아마 스택 상태로 대기하고 있었던 듯 하다) 그래서 이름만 바꾼 빈을 주입해서 콘솔에 띄워보았다 @Component public class AppRunner implements ApplicationRunner { @Autowired private SampleService sample.. 2019. 10. 1.
[jenkins] gitlab 과 jenkins webhook 으로 자동빌드 연결 인터넷을 찾아보면 권한 등록이 크게 2개로 구분되는거 같다. ​ 1. Gitlab 에 User Setting 에서 Access Token 을 생성해 jenkins에 등록하여 인증하는 방법 2. Jenkins 에서 만든 Item 에서 Secret Token 을 생성해 Gitlab 프로젝트 내 Integrations 에 등록하여 인증하는 방법 ​ 내 경우 1번방법은 되지 않아서 2번방법으로 등록하여 성공했다. # Jenkins 에 관련 플러그인 설치 Jenkins 관리 > 플러그인 관리 로 이동한다 GitLab Plugin, GitLab Hook Plugin 을 설치한다.(목록에서 보이지 않으면 '설치 가능' 탭을 클릭한다음 gitlab으로 검색한다) # Jenkins 에 새로운 Item 등록 소스코드 관리.. 2019. 9. 25.
[aws] DMS(Database Migration Service) 이용시 주의사항 작업 설정을 기본으로 설정하면 스키마가 있음에도 테이블을 drop -> create 한다. 관련 설정은 작업 설정 안에 '대상 테이블 준비모드' 에서 수정할 수 있다. 이 모드는 총 3개가 있는데 다음과 같다. 1) 아무것도 안함 => 테이블이 존재하면 추가 DDL을 실행하지 않고, 없으면 생성 2) 대상에서 테이블 삭제 => 테이블을 드랍하고 새로 테이블을 만듬 3) 자르기 => 테이블과 메타데이터를 그대로 두지만, 거기에서 데이터를 제거합니다. 만약 테이블을 drop 하고 생성하는걸 선택하면 반드시 인덱스를 재설정 해줘야 한다. DMS는 테이블을 생성하고 키를 등록하는 것까지는 해주는데 추가 인덱스를 등록해주지 않는다. 그래서 성능에 영향이 있는 인덱스는 반드시 새로 설정해주거나, 아니면 위의 설정중.. 2019. 9. 24.
[gradle] build 실패(No cached version of available for offline mode) 결론: 다음명령어를 실행하자 gradlew build --stacktrace build 를 하면 다음과 같은에러가 발생한다 FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring root project 'sender-spring'. > Could not resolve all artifacts for configuration ':classpath'. > Could not resolve org.springframework.boot:spring-boot-gradle-plugin:2.1.0.RELEASE. Required by: project : > No cached version of org.spring.. 2019. 8. 27.
반응형