아미(아름다운미소)

PANDAS 기본 명령어 본문

랭귀지/python

PANDAS 기본 명령어

유키공 2019. 6. 25. 18:03

PANDAS 데이터프레임 명령어

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<code class="hljs coffeescript"><span class="hljs-keyword">import</span> pandas <span class="hljs-keyword">as</span> pd
<span class="hljs-comment"># df, test 는 예시 dataframe 이름입니다. </span>
   
특정 목록만 출력
df.columns <span class="hljs-comment"># 칼럼명(필드)목록 출력</span>
df.index <span class="hljs-comment"># 인덱스(레코드)목록  출력 </span>
df.dtypes <span class="hljs-comment"># 칼럼 타입 출력</span>
df.values <span class="hljs-comment"># 인덱스를 제외한 나머지 칼럼들의 값</span>
df.칼럼명 <span class="hljs-comment"># 해당 칼럼 출력 </span>
df[<span class="hljs-string">'칼럼명'</span>] <span class="hljs-comment"># 칼럼을 출력하는 같은 명령어 </span>
  
목록을 리스트타입(list)으로 바꾸기
df.columns.tolist() <span class="hljs-comment"># 필드명 리스트</span>
df.values.tolist() <span class="hljs-comment"># 전체 값 리스트(2차원 리스트로 출력)</span>
df.칼럼명.tolist() <span class="hljs-comment"># 특정 칼럼만 리스트로 출력 </span>
df.index.tolist() <span class="hljs-comment"># 인덱스 -> 리스트로 출력</span>
  
(전체 인덱스)날짜 포맷으로 변환하기
df.index.strftime(<span class="hljs-string">'%Y-%m-%d'</span>).tolist()
  
날짜 포맷 데이터
pd.datetime(<span class="hljs-number">2018</span>,<span class="hljs-number">1</span>,<span class="hljs-number">6</span>)
  
날짜 계산하기
pd.datetime(<span class="hljs-number">2018</span>,<span class="hljs-number">1</span>,<span class="hljs-number">6</span>)-pd.DateOffset(<span class="hljs-number">90</span>) <span class="hljs-comment"># 90일전 날짜 계산</span>
  
(인덱스)특정 연도조건에 해당하는 항목 출력
df[df.index.year >= <span class="hljs-number">2016</span>]
df[df.index.year == <span class="hljs-number">2016</span>]
  
(인덱스) 특정 연도 범위주기
test[pd.datetime(<span class="hljs-number">2018</span>,<span class="hljs-number">1</span>,<span class="hljs-number">1</span>):pd.datetime(<span class="hljs-number">2018</span>,<span class="hljs-number">1</span>,<span class="hljs-number">6</span>)]
test[test.index <= pd.datetime(<span class="hljs-number">2018</span>,<span class="hljs-number">1</span>,<span class="hljs-number">6</span>)]
test.loc[pd.datetime(<span class="hljs-number">2018</span>,<span class="hljs-number">1</span>,<span class="hljs-number">1</span>):pd.datetime(<span class="hljs-number">2018</span>,<span class="hljs-number">1</span>,<span class="hljs-number">6</span>)]
  
<span class="hljs-literal">null</span>(<span class="hljs-literal">NaN</span>) 값 처리
df.y.fillna(<span class="hljs-string">'null'</span>) <span class="hljs-comment"># y 는 필드이름</span>
  
소수점 반올림
df.yhat.round(<span class="hljs-number">2</span>) <span class="hljs-comment"># yhat은 필드이름</span>
 
데이터 프레임 합치기 (칼럼 복사하기)
data1 = pd.DataFrame({<span class="hljs-string">'ds'</span>:forecast.ds, <span class="hljs-string">'yhat'</span>:forecast.yhat})
data1 = data1.set_index(<span class="hljs-string">'ds'</span>) <span class="hljs-comment"># 인덱스 셋팅해주기</span>
  
다른방법
new_data = data1.join(data2)
</code>

'랭귀지 > python' 카테고리의 다른 글

python 파일복사  (0) 2019.07.04
df.to_csv시 한글 깨짐 오류  (0) 2019.06.26
Anaconda watermark install  (0) 2019.06.11
python 정규 표현식 (Regular Expression)  (0) 2019.05.13
파이썬 3에서 urllib로 url 열기  (0) 2019.05.09
Comments