Series vs Dataframe

간단하게 데이터프레임은 시리즈가 여러 개 합쳐진 자료형

데이터프레임에서 하나의 열은 시리즈라고 생각하면 됨.

txt → Dataframe

import pandas as pd

scene_list_path = '/nas/workspace/kbae/2022_COD/k3a_sia_scenes_list.txt'

id_list = []
path_list = []
name_list = []
geog_list = []

with open(scene_list_path) as f:
    cnt = 0
    while f:
        line = f.readline()
        cnt += 1
        if cnt == 1:
            continue
        
        if line == '':
            break
        a = line.split('\\t')
        id_list.append(a[0])
        path_list.append(a[1])
        name_list.append(a[2])
        geog_list.append(a[3])
print(cnt)
df_tmp = pd.DataFrame({'id': id_list, 

                        'path': path_list, 

                        'name': name_list,
                        
                        'geog': geog_list
                        })

scene_list_path = '/nas/workspace/kbae/2022_COD/k3a_sia_scenes_list.txt'
df_public = pd.read_csv(scene_list_path, delimiter='\\t')

특정 칼럼 뽑기

df[['A','B']]

행 열 합치기

## concat 이용하기
new_data = {
    '이름' : ['kbae'],
    '나이' : [19],
    '키' : [190]
}
new_df = pd.DataFrame(new_data)
 
df = pd.concat([df,new_df])

Replace

DataFrame.replace(to_replace=None, value=_NoDefault.no_default, *, inplace=False, limit=None, regex=False, method=_NoDefault.no_default)

iloc

df['object_imcoords'].iloc[i]

Excel

# pip install openpyxl

import pandas as pd

xls = pd.ExcelFile({excel path})
# excel tab 존재
df1 = pd.read_excel(xls, '22년도')
df2 = pd.read_excel(xls, '18~21년도')