๋ก ๊ตฌ๋ถํด์ ์์ฑํด๋ณด๊ฒ ๋ค.
import pandas as pd
import matplotlib.pyplot as plt
import plotly.express as px
import folium
df = pd.read_csv('/content/drive/MyDrive/แแ
ฅแซแแ
ฉแผแแ
ชแซแ
แ
งแซ/แแ
ฆแแ
ตแแ
ฅ แแ
กแ
แ
ญ/แแ
ฅแซแแ
ตแแ
กแแ
ฎแผแแ
ฅแซแแ
ฉแแ
งแซแแ
ชแผ.csv')
๋ฐ์ดํฐ๋ถ์์ ์ํด pandas ๋ถ๋ฌ์๊ณ ๊ทธ๋ํ๋ฅผ ๊ทธ๋ฆฌ๊ธฐ ์ํ matplot๋ผ์ด๋ธ๋ฌ๋ฆฌ์ plotly, ์ง๋์๊ฐํ๋ฅผ ์ํ folium๊น์ง import ์๋ฃ
# 1) ์๊ตฐ๊ตฌ๋ช
์ปฌ๋ผ ์์ฑ ๋ฐ ํ์์๋ ์ปฌ๋ผ ์ญ์
data_split = df['์์ฌ์ง๋๋ก๋ช
์ฃผ์'].str.split(' ')
df['์๊ตฐ๊ตฌ๋ช
'] = data_split.str.get(2)
del df['์์ฌ์ง์ง๋ฒ์ฃผ์']
del df['์์ฌ์ง๋๋ก๋ช
์ฃผ์']
del df['์์ฌ์ง์ฐํธ๋ฒํธ']
๋ฐ์ดํฐ ๋ถ์์ ์ํด ํ์ํ ๊ฑด ์๊ตฐ๊ตฌ๋ช ์ด๊ธฐ๋๋ฌธ์ ์์ฌ์ง๋๋ก๋ช ์ฃผ์ ์ปฌ๋ผ์์ ์๊ตฐ๊ตฌ๋ช ๋ง split์ ํ ํ ์ปฌ๋ผ์ ์๋ก ์์ฑํ๋ค. ๊ทธ ํ ์ฐ๋ฆฌ ๋ถ์์ ํ์์๋ ์ง๋ฒ์ฃผ์ ๋๋ก๋ช ์ฃผ์ ์ฐํธ๋ฒํธ ์ด๋ฐ ๊ฒ๋ค์ ๊ทธ๋ฅ ์น ๋ค ์ญ์ ํ๋ค.
# 2) ์ปฌ๋ผ ์์ ์ ๋ฆฌ
df = df[['์ถฉ์ ์๋ช
','์๊ตฐ๋ช
', '์๊ตฐ๊ตฌ๋ช
', 'WGS84์๋', 'WGS84๊ฒฝ๋', '์ด์๊ธฐ๊ด๋ช
', '์ถฉ์ ๊ธฐํ์
๋ช
']]
๊ทธ๋ฆฌ๊ณ .. ๋ด๊ฐ ์ฝ๊ฐ ๊ฐ๋ฐ์ฆ์ด ์์ด์ ์๋ก ์์ฑํ ์ปฌ๋ผ์ด ๋ค์ ๋ฐ๋ก ์๋๊ฒ ์ซ์ด์ ์์๋ฅผ ์ ๋ฆฌํด๋ณด์๋ค. ์ํด๋ ๋ฌธ์ ์์.
# 3) NaN๋ฐ์ดํฐ ์ฒ๋ฆฌ
# df.isna().sum()
df.dropna(inplace=True)
df.reset_index(drop=True, inplace=True)
NaN ๋ฐ์ดํฐ ํ์ธ ํ dropna๋ก ๊ทธ๋ฅ ๋ค ๋ ๋ ค๋ฒ๋ ธ๋ค. ๊ทผ๋ฐ ์ฌ๊ธฐ์ ๋ฌธ์ . dropna๋ก ๋ฐ์ดํฐ๋ฅผ ๋ ๋ฆฌ๊ฒ ๋๋ฉด ์ธ๋ฑ์ค ๋ฒํธ๊ฐ 0,1,2,3,5,...,333,335,... ์ด๋ฐ์์ผ๋ก ๋์ด์ ๋์ค์ ์ง๋์๊ฐํํ ๋์๋ .. ์ํผ ์๋ฌ๊ฐ ๋ฌ๋ค. ๊ทธ๋์ ์ธ๋ฑ์ค ๋ฒํธ๋ฅผ ๋ฆฌ์ ํด์ฃผ์๋ค. ๋ค๋ฅธ ์กฐ์์ ์๋ฌ๊ฐ ๋ฌ๋์ ๊ตฌ๊ฒฝ๊ฐ๋ค๊ฐ ์๊ฒ๋ ์ฌ์ค .. ๊ฐ์ฌ ..
df.to_csv('๊ฒฝ๊ธฐ๋์ ๊ธฐ์ฐจํํฉ.csv', encoding='utf-8-sig')
๋ฐ์ดํฐ ์ ์ฅ๋ถํฐ ํ๊ณ ๋ถ์ํฉ์๋ค..
# 1) ์๊ตฐ๋ณ ์ถฉ์ ์ ํํฉ - ๋จ์ํ ๋น๋์ ์ฒดํฌ
fig = px.bar(df, x='์๊ตฐ๋ช
', color = '์๊ตฐ๋ช
')
fig.show()
์๋ณ๋ก ๊ตฌ๋ถํด์ ๋ณด๊ณ ์ถ์ด์ color์ ์๊ตฐ๋ช
์ ๋ฃ์ด๋ณด์๋ค.
์ฑ๋จ์์ ๊ฐ์ฅ ๋ง๊ณ ์ฉ์ธ๊ณผ ์์์ด ๋ค๋ฐ๋ฅด๊ณ ์๋ ๋ชจ์ต.
# 2) ๊ฐ ์๋ณ ์๊ตฐ๊ตฌ๋ณ ์ถฉ์ ์ ํํฉ
city = input('์ถฉ์ ์ ํํฉ์ ํ์ธํ๊ณ ์ถ์ ์ง์ญ์ ์
๋ ฅํ์์ค: ') # ์ง์ญ ์ด๋ฆ ๋ฃ๊ธฐ
a = df['์๊ตฐ๋ช
'].str.contains(city) # ํด๋น ์ง์ญ์ ์ธ๋ฑ์ค ์ฐพ๊ธฐ
df2 = df[a] # ์ธ๊ตฌ๊ตฌ์กฐ ์ ์ฅ
fig = px.bar(df2, x='์๊ตฐ๊ตฌ๋ช
', color ='์๊ตฐ๊ตฌ๋ช
')
fig.show()
split์ ํ ์ด์ .. ์ฌ์ฉ์์๊ฒ ์๋ฅผ input ๋ฐ์ ์๊ตฐ๊ตฌ๋ณ๋ก ๋น๊ตํ๊ณ ์ถ์๋ค.
๊ทผ๋ฐ ์ฌ์ค ์ด ๊ทธ๋ํ์๋ ๋น๋ฐ์ด ์๋ค. ๊ทธ ์์ ๊ตฌ๊ฐ ์์ผ๋ฉด ๊ฑ ๋๋ก๋ช
์ฃผ์๊ฐ ๋์จ๋ค...
์ด๋ ๊ฒ .. ์ง๋ฒ์ฃผ์๋ก split์ ํ์๋ค๋ฉด ๋์ผ๋ก๋ผ๋ ๋น๊ต๊ฐ ๊ฐ๋ฅํ์ํ
๋ฐ splitํ์ ๋๋ ์ด๋ฐ๊ฑฐ๊น์ง ์๊ฐํ๊ณ ํ์ง๋ ์์๊ธฐ๋์ ....
# 3) ์ด์๊ธฐ๊ด ๋น๋์ ๊ทธ๋ํ
fig = px.bar(df, x='์ด์๊ธฐ๊ด๋ช
', color='์ด์๊ธฐ๊ด๋ช
')
fig.show()
์ด์๊ธฐ๊ด๋ณ๋ก๋ ๋น๊ตํด๋ณด์๋ค. ๊ทผ๋ฐ ๋ณด๋ฉด ์์ด ์ฐํด์ ..
(๋์ค์ ๊ตํต์ฌ๊ณ ๋ฐ์ดํฐ๋ถ์ํ ๋๋ ๋๋์ฑ ์์ด ์ฐํ๋ค)
์ด ์์ ์ด์ผ ํ ์๋ ์๋??ํ์๋๋ฐ ์์์ผ, ๊ทธ๋ฌ๋๊น 9์ 5์ผ์ ๊ต์๋์ด plotly๋ก ํ์คํ ๊ทธ๋จ ๊ทธ๋ฆฌ๋ ๋ฐฉ๋ฒ์ ์๋ ค์ฃผ์๋ฉด์ ๊ฑ ํด๊ฒฐ๋๋ค ..
๊ต์๋์ด ํ์คํ ๊ทธ๋จ ๊ทธ๋ฆฌ์๋ ๊ฑฐ ๋ณด๋ฉด์ ์ฒ์ ๊ทธ๋ํ ๊ทธ๋ฆฌ๊ธฐ ์ ์ ๋น๋์ ๋น๊ต ๊ทธ๋ํ๋๊น matplot์ผ๋ก ํ์คํ ๊ทธ๋จ ๊ทธ๋ํ๋ฅผ ๊ทธ๋ ธ๋ค๊ฐ ๊ทธ๋ํ๊ฐ ๋ญ๊ฐ ๋ง์ ์๋ค์ด์ plotly๋ก ํ์คํ ๊ทธ๋จ ๊ทธ๋ํ ๊ทธ๋ฆฌ๋ ๋ฐฉ๋ฒ์ ๊ฒ์ํด๋ด์ผ๊ฒ ๋ค ํด๋๊ณ ๊น๋จน์๊ฒ ๊ธฐ์ต์ด ๋ฌ๋ค.. ์ด์ํ๊ฒ ๊ต์ก์ฅ์์ ๊ณผ์ ํ๋ฉด ์ ์ ์ด ์์ด์ ์ง์์ ์ฐจ๋ถํ ํ๋ฉด ์ ๋ณด์ด๋ ๊ฒ๋ค๋ ๋ค ์๋ณด์ด๊ณ ๊ธ๋ฐฉ ํด๊ฒฐํ ์ ์๋ ๋ฌธ์ ๋ ์์ฒญ ์๊ฐ์ ๋ค์ฌ ํค๋งค๊ฒ ๋๋ค .. ๋์ค์ ๊ตํต์ฌ๊ณ ๋ฐ์ดํฐ ๋ถ์ํ ๋ ์ด๊ฒ ์์ฒญ ์ฌํด์ ธ์ .. ๊ฑ ์ง์์ ์ฒ์๋ถํฐ ๋ค์ํ๊ฒ๋ผ์ ๋ฐค๋ ์๋ค ...
๋๋ ๋ญ๊ฐ ๋ฌธ์ ์ง
๋ญ๊ฐ ๋ฌธ์ ๊ธด ๋ญ๊ฐ ๋ฌธ์ ์ผ ์ง์ค๋ ฅ ๋ฌธ์ ์ง ..
์ฐ์ง์ฃ ์ด๋ช
์บ๋๋ผ๋ ์ฌ๋จน์ด์ผ๋ ๊น์
# 4) ์ถฉ์ ๊ธฐ ํํฉ(ํ์ด์ฐจํธ)
ratio = df['์ถฉ์ ๊ธฐํ์
๋ช
'].value_counts()
labels=['AC์์', 'DC์ฐจ๋ฐ๋ชจ+AC3์+DC์ฝค๋ณด', 'DC์ฐจ๋ฐ๋ชจ+DC์ฝค๋ณด', 'DC์ฝค๋ณด', 'DC์ฐจ๋ฐ๋ชจ+AC3์']
plt.figure(dpi=200)
plt.title('์ถฉ์ ๊ธฐ ๋น์จ')
plt.pie(ratio, startangle=90, autopct='%.2f%%')
plt.legend(labels, loc=(0.9, 0.7))
plt.show()
์ถฉ์ ๊ธฐ๋ ํ์ด์ฐจํธ๋ก ๊ทธ๋ฆฌ๊ณ ์ถ์ด์ ๊ทธ๋ฆฌ๋๋ฐ ์๋ฌด๋๋ ์ด๊ฑด ์ด value ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ์๋ค๋ณด๋๊น value_counts๋ฅผ ์จ์ ๊ทธ๋ ธ๋ค.
(์ด๊ฒ๋ ๋ค๋ฅธ์กฐ๊ฐ ์๋ ค์คฌ๋ค ๊ฐ์ฌ ..)
์ด๊ฒ๋ plotly ์จ์ ๊ทธ๋ฆฌ๋ฉด ์ข ๋ ๋ณด์ ๊ฐ๋ฅํ ๊ฑฐ ๊ฐ๋ค.
# 5) ์ง์ญ๋ณ ์ด์๊ธฐ๊ด ๋ถํฌ๋
fig = px.bar(df, x='์๊ตฐ๋ช
', color='์ถฉ์ ๊ธฐํ์
๋ช
')
fig.show()
๊ทธ๋ํ๋ฅผ ๊ทธ๋ฆฌ๋ค๋ณด๋๊น ๋์ ๊ทธ๋ํ๋ฅผ ๋๋ฌด ...... ๊ทธ๋ฆฌ๊ณ ์ถ์๋๋ฐ ์ด๊ฒ ๋ค ์ปฌ๋ผ์ด๋ค๋ณด๋๊น ๊ทธ๋ ค์ง์ง๋ฅผ ์์์ ..
(๊ฒ์์ ๊ทธ์ง๋ง ์์น๊ณ 50๋ฒ์ ํ๊ณ ์ ํ๋ธ ์์๋ 5๊ฐ๋ ๋ณธ ๊ฑฐ ๊ฐ์๋ฐ groupby๋ฅผ ๋ชฐ๋๋ค .. ๊ตฌ๊ธ๋ง ํ๋ ๋ฐฉ๋ฒ๋ถํฐ ์ฐ๋งํด์ผํ ๋ฏ)
์ผ๋จ์ color๋ก ๊ตฌ๋ถํ๋ ๊ฑธ๋ก ๋ง์กฑํ์๋ค ..
์ฐ๋ฆฌ ์กฐ๋ ์ง๋์๊ฐํ์ ํํํ๊ณ ์ถ์ ๊ฒ์ด
์๋ค(๋ชจ๋ ์กฐ์ฅ๋์ ์์ด๋์ด .. ์งฑ!)
2๋ฒ์ ์๋ฃ๋ฅผ ์กฐ์ฌํ๋ค๋ณด๋ ์ฐจ์ข ๋ณ๋ก ์ถฉ์ ๊ธฐ ํธํ๋๋๊ฒ ์๊ณ ์๋๋๊ฒ ์์ด์ ์ด๊ฑธ๋ก ํ์ํ๋ ๊ฑธ๋ก ๋ฐ๋์๋ค. ๋ ์๋ ์ถฉ์ ๊ธฐ ๋ณ๋ก ์์ ๊ตฌ๋ถํด์ ํ์ํ๋ ค๊ณ ํ๋๋ฐ ์๊ฐํ๋ฅผ ํ๋ค๋ณด๋ ์ด๊ฒ ๋ณ๋ก ์๋ฏธ๊ฐ ์๋ ๊ฑฐ ๊ฐ์์ ์ฌ์ฉ์๊ฐ ์ฐจ์ข ์ ์ ๋ ฅํ๋ฉด ์ถฉ์ ๊ฐ๋ฅํ ๊ณณ๊ณผ ๋ถ๊ฐ๋ฅํ ๊ณณ์ผ๋ก ๊ตฌ๋ถํด์ ํ์ํ๋ ๊ฒ์ผ๋ก ์ต์ข ๊ฒฐ์ !
์๋ฃ๋ ์ด๊ณณ์์ ์ฐธ๊ณ ํ๋ค!!
(https://www.ev.or.kr/portal/chargerkind)
from ipywidgets.widgets.widget_selection import RadioButtons
# 3. ์ง๋ ์๊ฐํ - ์ถฉ์ ์ ์์น
# ์ถฉ์ ๊ธฐํ์
๋ณ ๊ฐ๋ฅํ ์ฐจ์ข
all~~~
from scipy.sparse import dok
type_1 = ['๋ธ๋ฃจ์จ', '๋ ์ด', '์์ธ', '์์ด์ค๋', '์คํํฌ', 'i3', 'Leaf', '๋ณผํธ', 'ZOE']
type_2 = ['๋ธ๋ฃจ์จ', '๋ ์ด', '์์ธ', '์์ด์ค๋', 'Leaf', 'SM3 ZE', '์ฝ๋', '๋๋ก', 'ZOE', '์คํํฌ', '๋ณผํธ', 'i3']
type_3 = ['๋ธ๋ฃจ์จ', '๋ ์ด', '์์ธ', '์์ด์ค๋', 'Leaf', '์ฝ๋', '๋๋ก', 'ZOE', '์คํํฌ', '๋ณผํธ', 'i3']
type_4 = ['์์ด์ค๋', '์ฝ๋', '๋๋ก', '์์ธ', 'ZOE', '์คํํฌ', '๋ณผํธ', 'i3']
type_5 = ['๋ธ๋ฃจ์จ', '๋ ์ด', '์์ธ', '์์ด์ค๋', 'Leaf', 'SM3 ZE']
landmark = ['์ฉ์ธ ์๋ฒ๋๋', '์์ ํ์ฑ', '์์ธ๋๊ณต์(์์ธ๋๋)', 'ํ๊ตญ๋ฏผ์์ด', 'ํ์ฃผ ํ๋ก๋ฐฉ์ค ๋ง์']
landmark_lat = ['37.27711935934', '37.2869619', '37.42922350891575', '37.259406344922276', '37.79080554013303']
landmark_lon = ['127.22694956007', '127.011801', '127.01476688687515', '127.12315632756929', '126.68517789344757']
print(landmark)
carname = input("์ฐจ์ข
์ ์
๋ ฅํ์ธ์")
ln = input("์์ ๋๋๋งํฌ ์ค ํ๋๋ฅผ ๊ณจ๋ผ ์
๋ ฅํ์์ค")
Kmap = folium.Map(location=[df['WGS84์๋'].mean(), df['WGS84๊ฒฝ๋'].mean()], zoom_start=10)
condition = df['์ถฉ์ ๊ธฐํ์
๋ช
']
for n in range(5):
if ln in landmark[n]:
folium.CircleMarker([float(landmark_lat[n]), float(landmark_lon[n])], radius = 100,
color='orange', fill_color='orange').add_to(Kmap)
for index_draw in range(0, len(condition)):
if condition[index_draw] == 'AC์์' and carname in type_1:
folium.Marker([df.loc[index_draw, 'WGS84์๋'], df.loc[index_draw, 'WGS84๊ฒฝ๋']],
popup='<pre>'+df['์ถฉ์ ์๋ช
'][index_draw]+'</pre>', tooltip = '๋ธ๋ฃจ์จ, ๋ ์ด, ์์ธ, ์์ด์ค๋, ์คํํฌ, i3, Leaf, ๋ณผํธ, ZOE',
icon = folium.Icon(color='blue', icon='fa-car', prefix='fa')).add_to(Kmap)
elif condition[index_draw] == 'DC์ฐจ๋ฐ๋ชจ+AC3์+DC์ฝค๋ณด' and carname in type_2:
folium.Marker([df.loc[index_draw, 'WGS84์๋'], df.loc[index_draw, 'WGS84๊ฒฝ๋']],
popup='<pre>'+df['์ถฉ์ ์๋ช
'][index_draw]+'</pre>', tooltip = '๋ธ๋ฃจ์จ, ๋ ์ด, ์์ธ, ์์ด์ค๋, Leaf, SM3 ZE, ์ฝ๋, ๋๋ก, ZOE, ์คํํฌ, ๋ณผํธ, i3',
icon = folium.Icon(color='blue', icon='fa-car', prefix='fa')).add_to(Kmap)
elif condition[index_draw] == 'DC์ฐจ๋ฐ๋ชจ+DC์ฝค๋ณด' and carname in type_3:
folium.Marker([df.loc[index_draw, 'WGS84์๋'], df.loc[index_draw, 'WGS84๊ฒฝ๋']],
popup='<pre>'+df['์ถฉ์ ์๋ช
'][index_draw]+'</pre>', tooltip = '๋ธ๋ฃจ์จ, ๋ ์ด, ์์ธ, ์์ด์ค๋, Leaf, ์ฝ๋, ๋๋ก, ZOE, ์คํํฌ, ๋ณผํธ, i3',
icon = folium.Icon(color='blue', icon='fa-car', prefix='fa')).add_to(Kmap)
elif condition[index_draw] == 'DC์ฝค๋ณด' and carname in type_4:
folium.Marker([df.loc[index_draw, 'WGS84์๋'], df.loc[index_draw, 'WGS84๊ฒฝ๋']],
popup='<pre>'+df['์ถฉ์ ์๋ช
'][index_draw]+'</pre>', tooltip = '์์ด์ค๋, ์ฝ๋, ๋๋ก, ์์ธ, ZOE, ์คํํฌ, ๋ณผํธ, i3',
icon = folium.Icon(color='blue', icon='fa-car', prefix='fa')).add_to(Kmap)
else:
folium.Marker([df.loc[index_draw, 'WGS84์๋'], df.loc[index_draw, 'WGS84๊ฒฝ๋']],
popup='<pre>'+df['์ถฉ์ ์๋ช
'][index_draw]+'</pre>', tooltip = '์ถฉ์ ๋ถ๊ฐ',
icon = folium.Icon(color='red', icon='fa-car', prefix='fa')).add_to(Kmap)
Kmap
์ฐจ์ข
์ ์ฝ๋, ๋๋๋งํฌ๋ ๋ฏผ์์ด์ ์
๋ ฅํ ๊ฒฐ๊ณผ์ด๋ค
์์งํ ๊ฒฝ๊ธฐ๋ ์ ๊ธฐ์ฐจ ํํฉ ๋ถ์์ ์ฐ๋ฆฌ๊ฐ ํ๋ ค๊ณ ํ๋ ๋๋ก ๊ฒฐ๊ณผ๊ฐ ์ ๋์จ ํธ์ธ ๊ฑฐ ๊ฐ๋ค.
๋ฌธ์ ๋ .. ๊ตํต์ฌ๊ณ ํํฉ์ด์๋ค.
์ง์์ ๊ณผ์ ํ๊ณ ์๋๋ฐ๋ ์ง์ ๊ฐ๊ณ ์ถ์๋ค ใ
ใ
..
์ด๋ฒ์๋
๋ก ๊ตฌ๋ถํด์ ์์ฑํด๋ณด๊ฒ ๋ค.
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import plotly.express as px
import folium
df_18 = pd.read_csv('/content/drive/MyDrive/แแ
ฅแซแแ
ฉแผแแ
ชแซแ
แ
งแซ/แแ
ฆแแ
ตแแ
ฅ แแ
กแ
แ
ญ/แแ
ฉแ
แ
ฉแแ
ญแแ
ฉแผแแ
ฉแผแแ
กแซ_แแ
กแแ
กแผแแ
ญแแ
ฉแผแแ
กแแ
ฉแแ
ฅแผแแ
ฉ_2018.csv')
df_19 = pd.read_csv('/content/drive/MyDrive/แแ
ฅแซแแ
ฉแผแแ
ชแซแ
แ
งแซ/แแ
ฆแแ
ตแแ
ฅ แแ
กแ
แ
ญ/แแ
ฉแ
แ
ฉแแ
ญแแ
ฉแผแแ
ฉแผแแ
กแซ_แแ
กแแ
กแผแแ
ญแแ
ฉแผแแ
กแแ
ฉแแ
ฅแผแแ
ฉ_2019.csv')
df_20 = pd.read_csv('/content/drive/MyDrive/แแ
ฅแซแแ
ฉแผแแ
ชแซแ
แ
งแซ/แแ
ฆแแ
ตแแ
ฅ แแ
กแ
แ
ญ/แแ
ฉแ
แ
ฉแแ
ญแแ
ฉแผแแ
ฉแผแแ
กแซ_แแ
กแแ
กแผแแ
ญแแ
ฉแผแแ
กแแ
ฉแแ
ฅแผแแ
ฉ_2020.csv')
df_21 = pd.read_csv('/content/drive/MyDrive/แแ
ฅแซแแ
ฉแผแแ
ชแซแ
แ
งแซ/แแ
ฆแแ
ตแแ
ฅ แแ
กแ
แ
ญ/แแ
ฉแ
แ
ฉแแ
ญแแ
ฉแผแแ
ฉแผแแ
กแซ_แแ
กแแ
กแผ แแ
ญแแ
ฉแผแแ
กแแ
ฉ แแ
ฅแผแแ
ฉ_20211231.csv')
์ด๋๊น์ง๋ง ํด๋ ์ ์ ์ ์ด์๋ ๊ฑฐ ๊ฐ์๋ฐ ์ด๋์ ์ ์ ๋จธ๋ฆฌ๊ฐ ๊ฐ์ถํ์๊ผฌ...
# 2018๋
date_18 = df_18['๋ฐ์๋
์์ผ์๋ถ'].str.split(' ')
df_18['๋ฐ์๋
์์ผ'] = pd.to_datetime(date_18.str.get(0), format='%Y-%m-%d', errors='raise')
df_18['๋ฐ์์๊ฐ'] = date_18.str.get(1).str.split(':').str.get(0)
df_18 = df_18.astype({'๋ฐ์์๊ฐ':'int64'})
df_18 = df_18.astype({'๋ฐ์๋
':'str'})
#df_18['๋ฐ์์๊ฐ'] = pd.to_datetime(date_18.str.get(1), format='%H:%M', errors='raise').dt.time -> ์๋ถ์ด
์ด๋๊ธด ์ด๋์ผ ๊ฑ ์ง์์ ๋์จ ์๊ฐ๋ถํฐ ์ ์ ๋จธ๋ฆฌ๋ ์์๋ ๊ฑฐ ๊ฐ๋ค...
์ํผ ๊ฒฝ๊ธฐ๋ ํํฉ์ด๋ ์ ์ฌํ๊ฒ split์ด์ฉํด์ ๋ฐ์๋
์์ผ์๋ถ์์ ๋ฐ์๋
์์ผ๊ณผ ๋ฐ์์๊ฐ๋ง ๋ฐ์์ ์ ์ปฌ๋ผ์ ์์ฑํ๊ณ ๋ฐ์ดํฐ ํ์
๋ ๋ณ๊ฒฝํด์ฃผ์๋ค. ์ฌ์ค ๋ฐ์๋
์ ๋์ค์ ๊ทธ๋ํ๊ทธ๋ฆฌ๋ค๊ฐ ์์ฑํ๋ค.
# 2019๋
date_19 = df_19['๋ฐ์๋
์์ผ์'].str.split(' ')
df_19['๋ฐ์๋
์์ผ'] = pd.to_datetime(date_19.str.get(0), format='%Y-%m-%d', errors='raise')
df_19['๋ฐ์์๊ฐ'] = date_19.str.get(1)
df_19 = df_19.astype({'๋ฐ์์๊ฐ':'int64'})
df_19 = df_19.astype({'๋ฐ์๋
':'str'})
# 2020๋
date_20 = df_20['๋ฐ์๋
์์ผ์'].str.split(' ')
df_20['๋ฐ์๋
์์ผ'] = pd.to_datetime(date_20.str.get(0), format='%Y-%m-%d', errors='raise')
df_20['๋ฐ์์๊ฐ'] = date_20.str.get(1)
df_20 = df_20.astype({'๋ฐ์์๊ฐ':'int64'})
df_20 = df_20.astype({'๋ฐ์๋
':'str'})
# 2021๋
date_21 = df_21['๋ฐ์๋
์์ผ์'].str.split(' ')
df_21['๋ฐ์๋
์์ผ'] = pd.to_datetime(date_21.str.get(0), format='%Y-%m-%d', errors='raise')
df_21['๋ฐ์์๊ฐ'] = date_21.str.get(1).str.split(':').str.get(0)
df_21 = df_21.astype({'๋ฐ์์๊ฐ':'int64'})
df_21 = df_21.astype({'๋ฐ์๋
':'str'})
๋ฐ์ดํฐ๋ค์ด ๋ค ๋ฌ๋ผ์ ์ํ๋ฉด์ ์ ์ฒ๋ฆฌํ๋ค.
๊ทผ๋ฐ ์ด๊ฑธ ๊ต์ก์ฅ์์๋ ๋์น๋ฅผ ๋ชป์ฑ .. ๋ฏธ์น๊ฑฐ์๋???
์กฐ์ฅ๋์ด๋ ํ์์ธ๋๊ฐ ๋ง์ ํด์คฌ๋๋ฐ ์ ใ
ใ
ใ
ใ
ํด๋๊ณ ์๋ฌด์๊ฐ์์ด ์ ์ฒ๋ฆฌํ๊ณ ๋์ค์ ์ง์์ ํ๋๋ฐ ์ง๋์๊ฐํ๊ฐ ์๋ผ์ ๊ทธ์ ์์ผ ๋์น์ฑ..
๋จ์ ๋ง์ ๊ท๋ฑ์ผ๋ก๋ ์๋ค์๊ฑฐ์ง ๊ฑ
์ฝ๋ฉ๋ ๋ต๋ตํ๊ฒ๋ค ์ค๋ฅ๋ก ๊ทธ๋ฐ๊ตฌ๋ก ํ๋ ๊ฑฐ ์๋๋ผ๋ ์๋ ค์ฃผ๋๋ฐ ์์๋จน์ง๋ ๋ชปํ๊ณ ... ๊ทธ๋ ๊ฒ ์ ๋ ์ฝ 8์๊ฐ์ ๊ทธ์ ํ๋ฌ๋ณด๋ด๊ณ ์ง์ ์์ต๋๋ค..
์ด๊ฑฐ ์ฐ๋๊น ๋ ํ๋๋ค ...
# 2) ์ปฌ๋ผ ์ ๋ฆฌ
# 2-1) 18๋
๋ ์ฌ์์ = ์ฌ๋ง์ + ์ค์์ + ๊ฒฝ์์, ๋๋จธ์ง๋
๋ ๋ถ์์ = ์ค์์ + ๊ฒฝ์์)
del df_18['์ฌ์์์']
df_18['๋ถ์์์'] = df_18['์ค์์์'] + df_18['๊ฒฝ์์์']
# 2-2) ๋ฒ๊ท์๋ฐ -> ๊ฐํด์๋ฒ๊ท์๋ฐ
del df_18['๋ฒ๊ท์๋ฐ_๋๋ถ๋ฅ']
df_18.rename(columns={'๋ฒ๊ท์๋ฐ':'๊ฐํด์๋ฒ๊ท์๋ฐ'}, inplace=True)
# 2-3) ๊ฐํด์๋น์ฌ์๋ถ๋ฅ, ํผํด์๋น์ฌ์๋ถ๋ฅ
del df_18['๊ฐํด์_๋น์ฌ์์ข
๋ณ_๋๋ถ๋ฅ']
del df_18['ํผํด์_๋น์ฌ์์ข
๋ณ_๋๋ถ๋ฅ']
# 2-4) ๋ฐ์์์น () -> _
df_21.rename(columns={'๋ฐ์์์นX(UTMK)':'๋ฐ์์์นX_UTMK', '๋ฐ์์์นY(UTMK)':'๋ฐ์์์นY_UTMK'}, inplace=True)
๋ฐ์ดํฐ๋ฅผ ๋ณด๋ฉด ๋๋จธ์ง ๋ฐ์ดํฐ์๋ ์ฌ์์์๊ฐ ์๊ณ 18๋ ๋์๋ง ๋ถ์์์๊ฐ ์๊ณ ์ด๋ฐ๊ฒ ์์ด์ ์ฒ์์๋ ๊ฑ 18๋ ๋์๋ง ์๋ ์ฌ์์ ์ปฌ๋ผ์ ๋ ๋ฆฌ๊ณ 18๋ ๋์๋ง ๋ถ์์์ ์ปฌ๋ผ์ ์ถ๊ฐํ๋๋ฐ ๋์ค์ ์ฝ๋ก๋ ๊ด๋ จ๋ ๊ทธ๋ํ๋ฅผ ๊ทธ๋ฆฌ๋ค๋ณด๋๊น ์ฌ์์์ ๋ฐ์ดํฐ๋ก๋ ๋น๊ตํ๊ณ ์ถ์ด์ ธ์ ๊ฒฐ๊ตญ ๊ทธ๋ ๋ค์ ์ปฌ๋ผ์ ์ถ๊ฐ ์์ฑํ๋ค .. ์ปฌ๋ผ์๋ ์ปฌ๋ผ๋ช ์ด ๋ค๋ฅด๋ฉด ๋ฐ์ดํฐ ํฉ์น ๋ ๋ค nan ๊ฐ ์ฒ๋ฆฌ๊ฐ ๋๊ธฐ๋๋ฌธ์ ์ด๊ฑธ ๋ค ํ๋ํ๋ ๊ณ ์ณ์ค์ผํ๋ค. ์ด๊ฒ๋ ๋ชฐ๋๋ค๊ฐ ์ง์์์ ์์๋ค .. ๋์ฒด ๊ต์ก์ฅ์์๋ ๋ญํ๋ ์ ํ์์ธ๋ฐ ๊ณง ๊ณ ํ์๋ ๊ฑฐ ๊ฐ๋ค ๊ฑ
# 3) ์ปฌ๋ผ์ญ์
del df_18['๋ฐ์๋
์์ผ์๋ถ']
del df_19['๋ฐ์๋
์์ผ์']
del df_20['๋ฐ์๋
์์ผ์']
del df_21['๋ฐ์๋
์์ผ์']
ํ์์๋ ์ปฌ๋ผ ์ญ์ ํด์ฃผ๊ณ
# 4) ๋ฐ์ดํฐ ํฉ์น๊ธฐ
df_list = [df_18, df_19, df_20, df_21]
df_all = pd.concat(df_list, ignore_index=True)
๋ฐ์ดํฐ๋ฅผ ํฉ์ณ์ฃผ์๋ค ..
# 1) ๋
๋๋ณ ์ฌ๋ง์์ ๋น๊ต
fig = px.bar(df_all, x='๋ฐ์๋
', y = '์ฌ๋ง์์')
fig.show()
ํ์คํ ๊ทธ๋จ ....
# 2) ๋
๋๋ณ ๋ถ์์์ ๋น๊ต
fig = px.bar(df_all, x='๋ฐ์๋
', y='๋ถ์์์')
fig.show()
ํ์คํ ๊ทธ๋จ์ ํ์๋ค๋ฉด ..........
# 3) ์์ผ๋ณ ์ฌ๋ง์์ ๋น๊ต
fig = px.bar(df_all, x='์์ผ', y='์ฌ๋ง์์', color='์ฃผ์ผ')
fig.show()
# ์ง๋์๊ฐํ(์ฐ๋๋ณ๋ก ์ปฌ๋ฌ ๊ตฌ๋ณ)
df_map = folium.Map(location=[df_all['์๋'].mean(), df_all['๊ฒฝ๋'].mean()], zoom_start=12)
df_all = df_all.astype({'๋ถ์์์':'float64'})
df_all = df_all.astype({'์ฌ๋ง์์':'float64'})
acc = df_all.์ฌ๊ณ ์ ํ
year = df_all.๋ฐ์๋
for n in range(len(year)):
if year[n] == '2018':
cnt = df_all['์ฌ๋ง์์'][n] + df_all['๋ถ์์์'][n]
folium.CircleMarker([df_all['์๋'][n],df_all['๊ฒฝ๋'][n]], radius=cnt*5, popup=acc[n],
color='red', fill_color='red').add_to(df_map)
elif year[n]=='2019':
cnt = df_all['์ฌ๋ง์์'][n] + df_all['๋ถ์์์'][n]
folium.CircleMarker([df_all['์๋'][n],df_all['๊ฒฝ๋'][n]], radius=cnt*5, popup=acc[n],
color='blue', fill_color='blue').add_to(df_map)
elif year[n]=='2020':
cnt = df_all['์ฌ๋ง์์'][n] + df_all['๋ถ์์์'][n]
folium.CircleMarker([df_all['์๋'][n],df_all['๊ฒฝ๋'][n]], radius=cnt*5, popup=acc[n],
color='green', fill_color='green').add_to(df_map)
elif year[n]=='2021':
cnt = df_all['์ฌ๋ง์์'][n] + df_all['๋ถ์์์'][n]
folium.CircleMarker([df_all['์๋'][n],df_all['๊ฒฝ๋'][n]], radius=cnt*5, popup=acc[n],
color='yellow', fill_color='yellow').add_to(df_map)
df_map
๊ทธ๋ฆฌ๊ณ ๋ฐํํ ๋ ์ง๋์๊ฐํํ ๊ฑฐ ๋ณด์ฌ์ฃผ๋ ค๊ณ ํ์ ํ๋ฉด์ด ๋
ธ๋์์ผ๋ก ๋ ๊ฐ์ง๊ณ ๊ฒฐ๊ตญ ๊ทธ๋ฅ ๋์ด๊ฐ์๋๋ฐ ๊ทธ ์์ธ์ ์์๋ค .. ์๋ CircleMarker๋ง๊ณ Circle๋ก ์ฝ๋๋ฅผ ์
๋ ฅํ์ด์ ๋ฐ์ง๋ฆ์ cnt * 250์ ํด๋์ ๊ทธ๋ฌ๋ค ...
์ด๊ฑฐ ์ฐ๋ฉด์ ๋ ํ๋ฉด์ด ๋
ธ๋๊ฒ ๋ ์ ์ปดํจํฐ๊ฐ ๋๋์ด ๋ง์ด ๊ฐ๊ฑด๊ฐ ..... ํ๋๋ฐ ์๊ณ ๋ณด๋ ๊ทธ๋์ ๊ทธ๋ฐ๊ฑฐ์๋ค.. 5๋ก ๋ฐ๊พธ๋ฉด ์ ๋ณด์ธ๋ค.
์์๊น์ง๊ฐ ๊ต์๋์ด ์ฃผ์ ๊ณผ์ ์๊ณ ์ด๊ฑฐ๋ง ํ๋ฉด ์ฌ๋ฏธ์์ผ๋๊น ..
์ถ๊ฐ์ ์ผ๋ก ํ ์ ์๋ ๊ฒ ๋ญ ์์๊น ๊ณ ๋ฏผ์ ํ๋ค๊ฐ ๋ถ์ฐ์ด ๋๋ก๊ฐ ๋ง์ฅ์ด๋ผ ์ด๋ณด์๋ค์ด๋ ์ฌํ์จ ์ฌ๋๋ค์ ์ด์ ํ๊ธฐ ์ด๋ ต๋ค๊ณ ํ ๊ฒ ์๊ฐ๋์ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ก ์ ์ฅํด์ ๊ทธ๋ํ๋ฅผ ๊ทธ๋ ค๋ณด๋๊น ์ ์ฒด ๋ฐ์ดํฐ๋ก ๋
๋๋ณ ๋ถ์์ ํ ๊ฒ๊ณผ ๋ค๋ฅธ ํน์ดํ ๊ทธ๋ํ๊ฐ ๊ทธ๋ ค์ ธ์ ๋ถ์ฐ์ง์ญ ๊ตํต์ฌ๊ณ ํํฉ ๋ถ์์ ํด๋ณด์๊ณ ๊ฒฐ์ !
โ๏ธ 1. ๋ถ์ฐ ๋ฐ์ดํฐ ์ ์ฅ
df_bs = df_all[df_all['๋ฐ์์ง์๋'] == '๋ถ์ฐ']
df_bs = df_bs.astype({'์ฌ๋ง์์':'int64'})
df_bs = df_bs.astype({'๋ถ์์์':'int64'})
df_bs['์ฌ์์์'] = df_bs['์ฌ๋ง์์'] + df_bs['๋ถ์์์']
df_bs.reset_index(drop=True, inplace=True)
# ๋ถ์ฐ ๋ฐ์ดํฐ ์ฐ๋๋ณ๋ก
bs_18 = df_18[df_18['๋ฐ์์ง์๋'] == '๋ถ์ฐ']
bs_19 = df_19[df_19['๋ฐ์์ง์๋'] == '๋ถ์ฐ']
bs_20 = df_20[df_20['๋ฐ์์ง์๋'] == '๋ถ์ฐ']
bs_21 = df_21[df_21['๋ฐ์์ง์๋'] == '๋ถ์ฐ']
bs_18 = bs_18.astype({'์ฌ๋ง์์':'int64'})
bs_19 = bs_19.astype({'์ฌ๋ง์์':'int64'})
bs_20 = bs_20.astype({'์ฌ๋ง์์':'int64'})
bs_21 = bs_21.astype({'์ฌ๋ง์์':'int64'})
bs_18 = bs_18.astype({'๋ถ์์์':'int64'})
bs_19 = bs_19.astype({'๋ถ์์์':'int64'})
bs_20 = bs_20.astype({'๋ถ์์์':'int64'})
bs_21 = bs_21.astype({'๋ถ์์์':'int64'})
bs_18.reset_index(drop=True, inplace=True)
bs_19.reset_index(drop=True, inplace=True)
bs_20.reset_index(drop=True, inplace=True)
bs_21.reset_index(drop=True, inplace=True)
๋ณด๋ฉด ์๊ฒ ์ง๋ง ์์์๋ถํฐ ์๊ฐํ๋ฅผ ์ํ ๋ณ์ ์ ์ธ์ ์์ฒญ ๋ง์ด ํด์ .. ๋์ค๋์๋ ์์ฒญ ํท๊ฐ๋ฆฌ๊ณ ์ ์ ์์๋ค ์ง์ฌ์ผ๋ก ..
โ๏ธ 2. ๊ทธ๋ํ
# ์ฌ๋ง์์ ๊ทธ๋ํ
fig = px.bar(df_bs, x='๋ฐ์๋
', y='์ฌ๋ง์์')
fig.show()
# ๋ถ์์์ ๊ทธ๋ํ
fig = px.bar(df_bs, x='๋ฐ์๋
', y='๋ถ์์์')
fig.show()
๊ทธ๋ฆฌ๊ณ .. ๋๋ง์ ๋์ ๊ทธ๋ํ ..
์๋ plotly๋ก ๊ทธ๋ฆฌ๊ณ ์ถ์๋๋ฐ ๊ตฌ๊ธ๋ง์ ์๋ฌด๋ฆฌ ํด๋ ๋ญ์๋ฆฌ์ธ์ง๋ฅผ ๋ชจ๋ฅด๊ฒ ๊ฑฐ๋ dataframe์ ๋ง๋ค์ด์ ๊ทธ๋ฆฌ๋ ์์๋ง ์๊ฑฐ๋ ํ๊ณ ๋ด๊ฐ ์ํ๋ ๊ฑด ๋ชป์ฐพ์๋ค ..
๋ด๊ฐ ๊ทธ๋ฆฌ๋ ค๋๊ฑด ์ด value๊ฐ ๋ฐ์ดํฐ์ ์ฃผ์ด์ ธ ์์ง๋ ์์ ์ปฌ๋ผ๋ค์ธ๋ฐ ์ด๊ฑฐ๋์ ๋จธ๋ฆฌ๋ฅผ ์ฅ์ด์ง๋ค๊ฐ ๊ฒฐ๊ตญ์ ๊ฑ ๋ฐ์ดํฐ๋ฅผ ์๋ก ๋ง๋ค์๋ค ...
mydata = df_bs[['์ฌ๋ง์์', '์ค์์์', '๊ฒฝ์์์']]
#mydata[:121].sum() -> 18๋
#mydata[121:236].sum() -> 19๋
#mydata[236:336].sum() -> 20๋
#mydata[336:].sum() -> 21๋
samang = [123, 116, 100, 113]
js = [22, 28, 16, 13]
gs = [41, 20, 15, 20]
year=["2018", "2019", "2020", "2021"]
plt.figure(dpi=150)
plt.bar(year, samang, color='red', label='์ฌ๋ง์')
plt.bar(year, js, color='green', bottom = np.array(samang), label='์ค์์')
plt.bar(year, gs, color='yellow', bottom = np.array(samang)+np.array(js), label='๊ฒฝ์์')
plt.legend(loc="lower left",bbox_to_anchor=(0.8,1.0))
plt.show()
์ด๋ ๊ฒ ............
sum์จ์ ์ด value๋ฅผ ๊ตฌํ๊ณ ๊ทธ ๊ฐ์ ๋ฆฌ์คํธ์ ์ ์ฅํด์ ๊ทธ๋ํ ๊ทธ๋ฆด๋ 2์ฐจ์ ๋ฐฐ์ด์ ๋ง๋ค์ด์ ๊ทธ๋ฆฐ์
์ด๋ค .. ๊ทผ๋ฐ ์ด๊ฑธ groupby๋ฅผ ์ฐ๋ฉด ๊ฑ ํด๊ฒฐ์ด๋ผ๋ ๋๋ฌผ์ด ๋ซ๋น ๋น์ฐํจ ์๋ฐ๊ตฌ ์ฝ๋๋ก ๊ทธ๋ฆฐ ๊ทธ๋ํ๊ฐ ์์นจ 7์ ๋์ด์ ์์ฑ๋จ ์ด๊ฑฐ ๋ค ํ๊ณ ๊ณ ๋๋ก ๋
ธํธ๋ถ ๋ฎ๊ณ ์ป๊ณ ์ถ๊ทผํ๋ค .......
์ฐ๋ฆฌ์กฐ๊ฐ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์๊ณ ์ถ์๋ ๊ฒ์ด 2021๋ ์ ์ฌ์์์๊ฐ ์ฆ๊ฐํ ์ด์ ๋๊น ์ด์ ์ฐ๊ด๋ ๊ฒ์ด ๋ฌด์์ด ์์๊น ๊ณ ๋ฏผ์ ํด๋ณด์๋ค.
์ด ์ธ๊ฐ์ง๋ฅผ ์ค์ฌ์ผ๋ก ํ์
ํด๋ณด๊ธฐ๋ก ํ๊ณ ๊ฒฐ๊ณผ์ ์ผ๋ก๋ 2๋ฒ ๋ง๊ณ ๋ ๋ฏธ๊ถ์์ผ๋ก ๋น ์ง๊ฒ๋์๋ค .. ๊ทผ๋ฐ ๊ทธ๊ฑด ๊ถ๊ต์๋๋ค์กฐ๊ฐ ํด๊ฒฐํด์ .......
์ผ๋จ 1๋ฒ์ ๊ทธ๋ํ๊ฐ ์ฐ๋ฆฌ๊ฐ ์ํ๋ ๋๋ก ๊ทธ๋ ค์ง์ง ์์์ ๊ทธ๋ํ๋ฅผ ์ฌ๋ฌ๊ฐ ๊ทธ๋ ค๋ณผ ์ ๋ฐ์ ์์๋ค. 3๋ฒ์ ์ฌ์ค ์์งํ๊ฒ ๋งํ์๋ฉด 1๋ฒ์ด ๋ฏธ๊ถ์ผ๋ก ๋น ์ง์(์ฒ์์๋ 2๋ฒ๋ ๋ฏธ๊ถ์ด์๋ค ....) ๋ญ ๋ ํ ๊ฑฐ ์๋?ํ๋ค๊ฐ ์ถ๊ฐ ๋ ๊ฑฐ ์๊ณ ๋ด๊ฐ ์๋ฃ์กฐ์ฌํ๋ฉด์ ๋ฐ์๋์ ์์ ํ์ง ๋ฐ์ดํฐ๊ฐ ์์ด์ ๊ทธ๊ฑธ ์ง๋ ์๊ฐํ๋ฅผ ํด๋ณด๋ ค๊ณ ํ๋๋ฐ ๋ฐ์ดํฐ๊ฐ ๋๋ฌด ๋ง์์!! ๊ฒฐ๊ตญ ๊ทธ๋ ค์ง์ง ์์๋ค.
๊ทธ ์ธ์๋ ๋ญ ๋ ํ๋ ค๊ณ ํ๋ ํ๋ณด๋ค๋ ์์์ผ๋ .. ์๊ฐ๊ด๊ณ์ ...
1. ์ฝ๋ก๋ ์ฌํ์ ๊ฑฐ๋ฆฌ๋๊ธฐ์์ ์ฐ๊ด์ฑ
df_bs['๋ฐ์์'] = df_bs['๋ฐ์๋
์์ผ'].dt.month
df_bs['๋ฐ์๋
์'] = pd.to_datetime(df_bs['๋ฐ์๋
์์ผ']).dt.to_period('M')
df_bs = df_bs.astype({'๋ฐ์๋
์':'str'})
df_bs = df_bs.astype({'๋ฐ์์':'str'})
์ฝ๋ก๋์์ ์ฐ๊ด์ฑ์ ๋ณด๊ธฐ ์ํ ์๊ฐํ๋ฅผ ์ํด ๋ฐ์๋ ์๊ณผ ๋ฐ์์์ด๋ผ๋ ์ปฌ๋ผ์ ๋ฐ๋ก ์์ฑํ๋ค.
# ๋ฐ์๋
์๋ณ ์ฌ๋ง์์ ํํฉ
fig = px.bar(df_bs, x='๋ฐ์๋
์', y='์ฌ๋ง์์', color='๋ฐ์์')
fig.show()
์๋ ์ด ๊ทธ๋ํ๋ฅผ ์ฌํ์ ๊ฑฐ๋ฆฌ๋๊ธฐ ์ํ๊ธฐ๊ฐ๊ณผ ๊ฐํ๊ธฐ๊ฐ์ ๊ธฐ์ค์ผ๋ก ์์ ๊ตฌ๋ถํ๊ณ ์ถ์๋๋ฐ ์คํจํ๋ค. ํด์ ์ผ๋จ ๋ฐ์์๋ก ๊ตฌ๋ถํด๋ณธ ๊ฒฐ๊ณผ์ด๋ค.
๋ณด๋ฉด 2020๋
2,3์์ด ๋ค๋ฅธ ๋
๋์ ๋นํด ์ ๋ค. ๊ฐ์ ํด 1์ํ๊ณ ๋ง ๋น๊ตํด๋ ํ์ฐํ ์ฐจ์ด๊ฐ ๋๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. ๋๊ฐ์ด ์ฝ๋ก๋ ๋ฐ์ ์ดํ์ธ 21๋
ํ๊ณ ๋น๊ตํด๋ด๋ ์ ๋ค. ๊ทธ๋ผ 21๋
์ ์์ด๋ ๊ฒ ์ฆ๊ฐํ๋? ์๋ 2.5๋จ๊ณ์ด๋ ๊ฑฐ๋ฆฌ๋๊ธฐ๊ฐ 21๋
1์ 24์ผ 2๋จ๊ณ๋ก ๊ฒฉํํ์๊ณ 2์ 15์ผ๋ถํฐ 3์ 31์ผ๊น์ง๋ 1.5๋จ๊ณ์ธ ์ฌํ์ ๊ฑฐ๋ฆฌ๋๊ธฐ ์ํ๊ธฐ๊ฐ์ด์๊ธฐ ๋๋ฌธ์ด๋ค. 4์ 1์ผ๋ถํฐ 2๋จ๊ณ๋ก ๊ฒฉ์ํ์ ํ
์ค์ด๋ค์๋ค. ๋ค๋ฅธ ๋
๋ 4์ํ๊ณ ๋น๊ตํด๋ ํ์ฐํ ์ ๋ค.
๊ทธ ํ 5์ 21์ผ๋ถํฐ 8์ 9์ผ๊น์ง 1.5๋จ๊ณ๋ก ๊ฒฉํ๋์๊ณ ์ด๋ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ฉด ๋ ์ฆ๊ฐํ๋ค. ๊ทธ ํ 8์ 10์ผ๋ถํฐ 4๋จ๊ณ๋ก ๊ฒฉ์๋์๋๋ฐ ์ข ์ค์ด๋ค๋ค๊ฐ 10์๋ถํฐ๋ ๋ ์ฆ๊ฐํ๋ค. ํด์ 4๋จ๊ณ๊ฐ 6์๊น์ง๋ 4์ธ ๋ชจ์์ด ๊ฐ๋ฅํ๊ณ ๊ทธ ํ 10์๊น์ง๋ 2์ธ๊น์ง๋ง ๊ฐ๋ฅํ ๊ฒ์ด ์ํฅ์ ๋ผ์น์ง ์์์๊น ํด์ ๋ฌ๋ณ ๋ฐ์์๊ฐ์ ๋น๊ตํด๋ณด์๋ค.
21๋
๋ ๋ฐ์ดํฐ๋ง ๋น๊ตํ ๊ฒ์ด๋ค.
ํ .. ๋ณด๋ฉด ์๊ฒ ์ง๋ง ์ ํ ์ฐ๊ด์๋ค.
๊ทผ๋ฐ ์ด๊ฑฐ์ฐ๋ค๊ฐ ๋์น์ฑ๊ฑด๋ฐ 0์ ๋ฐ์ดํฐ ์ด๋๊ฐ๋ ...........
ํ ๊ฑ spss๋ R๋ก ํต๊ณ๋ถ์ ํ ๋๊ฐ ๊ทธ๋ฆฝ๋ค....
spss๋ ์ฝ๋๊ฐ ๋ญ์ ๊ฑ ๋ฒํผ๋ง ๋๋ฅด๋ฉด ํ ๋ฑ ๊ทธ๋ ค์ฃผ๊ณ ๊ทธ๋ํ ๊ทธ๋ ค์ฃผ๊ณ ํ๋ฅ ์ด๋ ๊ณ์๋ ๊ณ์ฐ ๋ค ํด์ฃผ๊ณ ๋๋ ๊ทธ๋ฅ ๊ทธ ์ซ์๋ณด๊ณ ๊ฒฐ๋ก ๋ง ๋ด๋ฉด ๋๋๋ฐ ..
๋ณตํํด์ ํต๊ณ๋ถ์ํ๋ฉด ์ ๊ต์๋ ์ด๊ฑด ๊ฐ๊ป์ด์ฃ ใ
ํ๋ฉด์ ์์ผ๋ฉด์ ํ ์ ์์ ๊ฑฐ ๊ฐ๋ค ...................
์ฌ ์ด๊น์ง๋ง ํด๋ ๋ ๊ดด๋กญํ๋ ์๊ด๋ถ์๊ณผ ํ๊ท๋ถ์์ ๊ทธ๋ฆฌ์ํ ์ค์ ๋ชฐ๋๋ค
์ํผ .. ๊ทธ๋ํ๋ฅผ ๊ทธ๋ ค๊ณ ๊ฒฐ๋ก ์ด ๋์ง ์์ 10์๋ถํฐ 12์๊น์ง๋ ๊ฑ ์ฌ๋๋ค์ด ์ฐ๋ง์ด๋ผ๊ณ ๋ถ์ฐ ๋๋ฌ๊ฐ์ ์ฌ๊ณ ๋ ๊ฑฐ ์๋๊น ํ๋ ๊ทธ์ง๊ฐ์ ์ถ์ธก๋ง ๋ณ์๋ค ..................
2. ๋ถ์ฐ์ธ๊ณฝ์ํ๊ณ ์๋๋ก๊ฐ ์ฆ๊ฐ ์์ธ์ด๋ผ๋ ๊ฐ์ค ์ฆ๋ช
์ด๊ฑด ํํธ๋งต์ ๋ณด๋ฉด ์ ์ ์๋ค.
์ค๋ฅธ์ชฝ ์๋๊ฐ 21๋ ๋์ธ๋ฐ ๋ค๋ฅธ ๋ ๋๋ณด๋ค ๋ ์ฌ๊ณ ๊ฐ ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
์ฌ๊ณ ๋ค๋ฐ์ง์ญ์ด๋ผ๋ ์ฐ์ฐ๋กํฐ๋ฆฌ๋ ํ๋ฒ ๋ด๋ณด๋ฉด
์ฌ๊ธฐ๋ ์คํ๋ ค 21๋
๋์๋ ์ฌ์์์๊ฐ ๋์จ ์ฌ๊ณ ๋ ์๋ฌ๋ค.
3. ์์ ์๋ 5030
์ด๋ ์์์๋ ์ค๋ช
ํ๋ฏ ์ง๋์๊ฐํ์ ์คํจํ๋ค. ํ์ง๋ง ์ด๊ฒ๋ ์ฌ์์๊ฐ ์ฆ๊ฐํ๋ค๋ ๊ทธ๋ํ๋ ํํธ๋งต์ผ๋ก๋ง ๋ด๋ ์ค๋ช
์ด ๊ฐ๋ฅํ๊ธด ํ๋ค.
์๋ ์ด๊ฒ๋ ๋ฐํ ๋ ๋งํ์ด์ผ ํ๋๋ฐ ๊น๋นกํ๋ค ...
์์๋ 20๋ ๋ ์๋๋ 21๋ ๋์ธ๋ฐ ์ด๊ฑฐ๋ณด๋ฉด ๊ผญ ๋ถ์ฐ์ธ๊ณฝ์ํ๋๋ก๊ฐ ์๋๋๋ผ๋ ๋๋ก์์ ์ฌ๊ณ ๊ฐ ๋ง์ด ๋ฌ๋ ๊ฑธ ํ์ธํ ์ ์๋ค.
๊ณผ์ ๋ฆฌ๋ทฐ ๋ ..