티스토리 뷰
1. 기존파일 읽기
1
2
3
|
file_name = "example"
print(file_name)
read_excel = pd.read_csv(file_name)
|
cs |
2. 기존파일 셀 읽기
1
2
3
|
name1 = read_excel.iloc[j, 9]
name2 = read_excel.iloc[j, 8]
name3 = read_excel.iloc[j,10]
|
cs |
3. 새로운 파일 만들기
1
2
3
4
5
|
new_excel=pd.DataFrame(columns=['EventNumber','Station','Magnitude'])
new_excel.loc[j]=[Event_number,Station,Magnitude]
new_file_name="data.csv"
new_excel.to_csv(new_file_name,mode='w')
|
cs |
4. 기존 data frame 한꺼번에 출력하기
1
2
|
DataFrame.to_csv('./data.csv', index=False)
|
cs |
5. groupby 메서드
- 데이터를 그룹 별로 분류하는 역할
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
49
50
51
52
53
54
55
56
57
|
import pandas as pd
import numpy as np
np.random.seed(0)
df = pd.DataFrame({
'key1': ['A', 'A', 'B', 'B', 'A'],
'key2': ['one', 'two', 'one', 'two', 'one'],
'data1': [1, 2, 3, 4, 5],
'data2': [10, 20, 30, 40, 50]
})
print(df)
"""
key1 key2 data1 data2
0 A one 1 10
1 A two 2 20
2 B one 3 30
3 B two 4 40
4 A one 5 50
"""
# key1을 기준
groups = df.groupby(df.key1)
#속성
print(groups.groups)
"""
{'A': Int64Index([0, 1, 4], dtype='int64'), 'B': Int64Index([2, 3], dtype='int64')}
"""
#data1에서만 그룹연산 하는 코드
print(df.data1.groupby(df.key1).sum())
"""
key1
A 8
B 7
Name: data1, dtype: int64
"""
print(df.groupby(df.key1)["data1"].sum())
"""
key1
A 8
B 7
Name: data1, dtype: int64
"""
print(df.groupby(df.key2).sum()["data2"] )
"""
key2
one 90
two 60
Name: data2, dtype: int64
"""
|
cs |
6. pandas column 명 없는 데이터 추가하기
1
|
data_df = pd.read_csv(PATH + data_list[i])
|
cs |
read_csv 에서 column 명이 없는 데이터는 names = [] 로 추가해주면 원하는 column 명을 설정해 줄 수 있음.
1
|
data_df = pd.read_csv(PATH + data_list[i], names=['time', 'x','y','z'])
|
cs |
7. pandas column 있는 데이터를 가지고 전체 값 가지고 오기 (tolist())
- 'x' 열에 있는 데이터를 가져온다는 뜻임
1
|
answer = data_df['x'].values.tolist()
|
cs |
8. pandas 기존의 행 인덱스를 제거하고 데이터 열 중 하나를 인덱스로 설정
- set_index
- 기존의 0,1,2,3,4 index 대신에 column을 선택하여 그 열을 index로 설정
1
2
3
4
5
6
7
8
9
10
11
12
13
|
import pandas as pd
import numpy as np
array = np.array([["paris","paris","seoul"],["newyork","paris","seoul"],["seoul","paris","paris"],["seoul","paris","paris"]])
df = pd.DataFrame(array, columns = ['A','B','C']).set_index('A')
print(df)
"""
B C
A
paris paris seoul
newyork paris seoul
seoul paris paris
seoul paris paris
"""
|
cs |
9. pandas dropna & fillna 사용하기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
import pandas as pd
import numpy as np
array = np.array([["paris","paris","seoul"],
["newyork",np.nan,"seoul"],
[np.nan,"paris","paris"],
["seoul",np.nan,"paris"]])
df = pd.DataFrame(array, columns = ['A','B','C'])
# Nan이 들어간 행은 다 지우기
result = df.dropna(how='all')
print(result)
#Nan이 들어간 행대신에 '0'을 넣기
result = df.fillna(0)
print(result)
|
cs |
10. pandas - sort_values 정렬하는법
- 출처 :pandas pydata
1
2
3
4
5
6
7
8
9
10
11
12
13
|
>>> df = pd.DataFrame({
... 'col1': ['A', 'A', 'B', np.nan, 'D', 'C'],
... 'col2': [2, 1, 9, 8, 7, 4],
... 'col3': [0, 1, 9, 4, 2, 3],
... })
>>> df
col1 col2 col3
0 A 2 0
1 A 1 1
2 B 9 9
3 NaN 8 4
4 D 7 2
5 C 4 3
|
cs |
<출처>
1. 데이터 사이언스 스쿨
'Programming > python' 카테고리의 다른 글
python - matplot & seaborn (0) | 2019.09.05 |
---|---|
python - PIL (0) | 2019.09.05 |
python - if __name__ == '__main__': 사용이유 (0) | 2019.09.05 |
python library - numpy (0) | 2019.09.05 |
python 문법 공부 - list (0) | 2019.09.05 |
댓글