python๐๐ผpandas ์ด๋ณด์ ๊ฐ์ด๋
3163 ๋จ์ด pythondatasciencepandamachinelearning
Python pandas๋ ๋ฐ์ดํฐ ๋ถ์์ ๋๋ฆฌ ์ฌ์ฉ๋๋ ์คํ ์์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋๋ค.
Pandas ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ML ๋ฐ ๋ฐ์ดํฐ ๊ณผํ์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์กฐ์ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค.
pip install pandas
์์คํ ์ pandas๋ฅผ ์ค์นํ๋ pip ๋ช ๋ น.
๋ฐ์ดํฐํ๋ ์์ด๋?
pandas DataFrame์ 2์ฐจ์ ๋ฐ์ดํฐ ๋ฐฐ์ด ๋๋ ํ๊ณผ ์ด์ด ์๋ ํ ์ด๋ธ์ ๋๋ค.
ํฌ๋์์ ๋ฐ์ดํฐ ํ๋ ์ ๋ง๋ค๊ธฐ:
import pandas as pd
car_dataset = {
'cars': ['Tata', 'Maruti', 'Tesla'], 'Model': ['Nano', 'i10', '11x3'], 'Range: [300, 315, 400]
}
car_df = pd.DataFrame(car_dataset)
print(car_df)
๋ฐ์ดํฐ ํ๋ ์์ ๊ธฐ๋ณธ ์ด ์์
๋๊ดํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ํ๋ ์ ์ด์ ์ฝ๊ฒ ์ก์ธ์คํ๊ณ ๊ฐ์ ํ ๋นํ๊ฑฐ๋ ์ ๋ฐ์ดํธํ ์๋ ์์ต๋๋ค.
๋ค์์ ๋ฐ์ดํฐ ํ๋ ์ ์ด์์ ์ํํ ์ ์๋ ๋ช ๊ฐ์ง ๊ธฐ๋ณธ ์์ ์ ๋๋ค.
#Accessing Single Column
print(car_df[['cars']])
# you can also use single square brackets to access single column
#Accessing Multiple Column
print(car_df [[ 'Model', 'Range']])
# Add New Column
car_df['new_column_name'] = [1, 2, 3] # new column value
# Delete Column
car_df.drop(columns=['new_col_name'], inplace=True)
# rename column
#Syntax: df.renamel columns={"oldName":"NewName"}, inplace=True)
car_df.rename(columns={ 'Model' : 'model'}, inplace=True)
CSV ํ์ผ ์ฝ๊ธฐ:
๋น ๋ฐ์ดํฐ ์ธํธ๋ฅผ ์ ์ฅํ๋ ๊ฐ๋จํ ๋ฐฉ๋ฒ์ CSV ํ์ผ(์ผํ๋ก ๊ตฌ๋ถ๋ ํ์ผ)์ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค.
CSV ํ์ผ์ ๊ธฐ๊ณ ํ์ต ๋๋ ๋ฐ์ดํฐ ๊ณผํ์์ ์์ ํ๋ ๋์ ์ฌ์ฉํ ์ผ๋ฐ์ ์ธ ํ์ผ ์ ํ์ ๋๋ค.
import pandas as pd
df = pd.read_csv('Housing.csv') print(df)
# print(df.to_string())
# use to_string() to print the entire DataFrame.
๋ฐ์ดํฐ ์ดํด๋ณด๊ธฐ:
๋ฐ์ดํฐ์ ๋์ ์์ค์ ๊ฐ์๋ฅผ ์ดํดํ๊ธฐ ์ํด pandas๋ ์ฌ๋ฌ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฉฐ ๊ทธ ์ค ์ผ๋ถ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
import pandas as pd
Read CSV File
df = pd.read_csv('Housing.csv')
#head of the data
print(df.head(10)) print first 19 rows of dataframe
#tall of the data
print(df.tail(10)) print last 10 rows of dataframe
#shape = To know the dimensions of the data print(df.shape)
#(545, 19) 11's means 545 rows and 13 columns
#Features
print(df.columns) # it return the columns name
#Index("price", "area", "bedrooms bathrooms, stories", "matnroad"
#guestroom", "basement, hotwaterheating', 'airconditioning,
#parking prefarea", furnishingstatus ], dtype="object")
#info
print(df.info())
prints info about the null values and the data types of each cols.
Pandas๋ฅผ ์ฌ์ฉํ ํต๊ณ ๋ถ์:
Pandas๋ ๋ฐ์ดํฐ์์ ๋ ๊น์ด ํ๊ณ ๋ค๊ณ ๋ ์ ์ฉํ ํต์ฐฐ๋ ฅ์ ์ฐพ๋ ๋ฐ ๋์์ด ๋๋ ๋ช ๊ฐ์ง ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ฉฐ ์ ์ฉํ ๊ธฐ๋ฅ ์ค ์ผ๋ถ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
# describe : returns statistical measures such as min and max values, mean, standard deviation and more.
df.describe()
# unique : return all the unique values in column.
df['columnName'].unique()
#value_count : returns the frequency of the values df['columnName'].value_counts()
# correlation : find the correlation among the features respectively.
df.corr()
Pandas์๋ ํ๊ท , ์ค์๊ฐ ๋ฐ ๋ชจ๋ ๋ฑ๊ณผ ๊ฐ์ ๋ค๋ฅธ ํต๊ณ์ ์ฒ๋๋ฅผ ์ฐพ๋ ๊ธฐ๋ฅ๋ ์์ต๋๋ค.
Reference
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(python๐๐ผpandas ์ด๋ณด์ ๊ฐ์ด๋), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://dev.to/quitsen/beginner-guide-on-pythonpandas-4a9ํ ์คํธ๋ฅผ ์์ ๋กญ๊ฒ ๊ณต์ ํ๊ฑฐ๋ ๋ณต์ฌํ ์ ์์ต๋๋ค.ํ์ง๋ง ์ด ๋ฌธ์์ URL์ ์ฐธ์กฐ URL๋ก ๋จ๊ฒจ ๋์ญ์์ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค