データ分析用のライブラリ.2
4554 ワード
Pandas
Pythonのライブラリ
構造化データの効率的な処理と格納
アレイ計算に特化したNumpy設計に基づく
シリアルデータ
Numpyのarray補強型
データとインデックス
dtypeパラメータを使用してデータ型を指定できます
data = pd.Series([1,2,3,4], dtype = "float")
print (data.dtype) #-> float64
インデックスを指定したり、インデックスにアクセスしたりできます.Dictionaryでシリアルの作成を許可
population_dict = {
'china':141500,
'japan':12718,
'korea':5180,
'usa':32676
}
population = pd.Series(population_dict)
DataFrame
複数のシリーズからなる行と列のデータ
DictionaryはDataFrameの作成をサポート
data ={
'country': ['china','japan','korea','usa'],
'gdp': [1409250000, 516700000, 169320000, 2041280000],
'population':[141500, 12718, 5180, 32676]
}
country = pd.DataFrame(data)
country = country,set_index('country')
1.Dictionary( data={key:value} -> 2.sireis (series([1.2.3.4]) -> 3.dataFrame(1->3)
DataFrameプロパティを検証するには、次の手順に従います.
print(country.shape) # -> (4,2)
print(country.size) # -> 8
print(country.ndim) # -> 2
print(country.values) # [[1409250000 141500]
[ 516700000 12718]
[ 169320000 5180]
[2041280000 32676]]
indexとcolumnの名前を指定country.index.name = "Country" # 인덱스에 이름 지정
country.columns.name = "Info" # 컬럼에 이름 지정
データフレームの格納と読み込みが可能#저장
country.to_csv("./country.csv") # csv (comma separated values)
country.to_excel("country.xlsx")
#불러오기
country = pd.read_csv("./country.csv") # comma separated values)
country = pd.read_excel("country.xlsx")
データの選択と変更
データの選択→索引/スライス
.loc:明示的なインデックスを参照するインデックス/スライス
.iloc:Pythonスタイルの整数インデックス/スライス
.loc
.iloc
カラム名がわかる場合は、DataFrameからデータを選択できます
Maching演算またはquery関数を使用して、条件に一致するDataFrame行を抽出
country[country['population'] < 10000] # masking 연산 활용
country.query("population > 100000") # query 함수 활용
結果値Seriesはnumpy arrayのように演算子を使用することもできます
gdp_per_capita = country['gdp'] / country['population']
country['gdp per capita'] = gdp_per_capita
結果値データの追加/変更->listまたはdictionary
df = pd.DataFrame(columns = ['이름','나이','주소']) #DataFrame 생성
df.loc[0] = ['길동','26','seoul'] # list로 데이터 추가
df.loc[1] = {'이름':'철수','나이':'25','주소':'인천'} # Dictionary로 데이터 추가
df.loc[1,'이름'] = '영희' #명시적 인덱스 활용하여 데이터 수정
結果値データの変更->NaN列の追加(Nan=Nota Number)
NAN値で初期化された新しいカラムを追加
df['전화번호'] = np.nan # 새로운 컬럼 추가 후 초기화
df.loc[0,'전화번호'] = '01012341234' # 명시적 인덱스 활용하여 데이터 수정
結果値データの変更→列の削除
dataFrameから列を削除してソースを変更
df.drop('전화번호',axis = 1, inplace = True) # 컬럼삭제
# axis = 1 -> 열방향 / axis = 0 :행 방향
# inplace = True : 원본 변경 / inplace = False : 원본 변경 x
結果値Masking演算のオーバーラップは&queryのオーバーラップはand!
Reference
この問題について(データ分析用のライブラリ.2), 我々は、より多くの情報をここで見つけました https://velog.io/@phphll/데이터-분석을-위한-라이브러리.2テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol