11/8/23, 8:34 PM Shafira Maulidina_51422531_2IA23.
ipynb - Colaboratory
=================================================
===================
INPUT DATA
=================================================
===================
import numpy as np
import pandas as pd
import sklearn
import seaborn as sns
import [Link] as plt
# Load data train dan test ke dalam pandas dataframe
# dataset : [Link]
concrete = pd.read_csv("[Link]
# menghasilkan jumlah baris dan jumlah kolom (bentuk data) pada data train dengan fungsi .shap
[Link]
(1030, 9)
# menampilkan 10 data teratas
[Link](10)
[Link] 1/8
11/8/23, 8:34 PM Shafira Maulidina_51422531_2IA23.ipynb - Colaboratory
cement slag ash water superplastic coarseagg fineagg age strength
0 141.3 212.0 NaN 203.5 NaN 971.8 748.5 28 29.89
# fungsi
1 describe()
168.9 untuk
42.2 mengetahui
124.3 158.3 statistika
10.8data untuk
1080.8data 796.2
numeric14seperti count, mean,
23.51
[Link]()
2 250.0 NaN 95.7 187.4 5.5 956.9 861.2 28 29.22
3 266.0 cement NaN
114.0 slag
228.0 ash
NaN water
932.0 superplastic
670.0 28 coarseagg
45.85 fin
4
count
154.8
1030.000000
183.4 NaN
559.000000
193.3 464.0000009.11030.000000
1047.4 651.000000
696.7 28 1030.000000
18.29 1030.00
5
mean255.0 NaN
281.167864 NaN 192.0
136.158676 NaN 181.567282
120.288793 889.8 945.0 90
9.816897 21.86
972.918932 773.58
6 std 166.8
104.506364
250.2 NaN
72.351823
203.5 33.675470
NaN 21.354219
975.6 692.6
4.5803287 77.753954
15.75 80.17
7min 251.4
102.000000
NaN 118.3
11.000000
188.5 24.5000006.4 121.800000
1028.4 757.7
1.700000
56 801.000000
36.64 594.00
825%296.0 NaN
192.375000 NaN 192.0
95.000000 NaN 164.900000
97.850000 1085.0 765.0 28
6.950000 21.65
932.000000 730.95
950%155.0
272.900000
184.0 143.0
135.700000
194.0 121.4000009.0 185.000000
880.0 699.0
9.400000
28 968.000000
28.99 779.50
75% 350.000000 189.000000 141.000000 192.000000 11.600000 1029.400000 824.00
max 540.000000 359.400000 200.100000 247.000000 32.200000 1145.000000 992.60
#cek nilai yang hilang / missing values di dalam data train
[Link]().sum().sort_values(ascending=False)
ash 566
slag 471
superplastic 379
cement 0
water 0
coarseagg 0
fineagg 0
age 0
strength 0
dtype: int64
[Link] 2/8
11/8/23, 8:34 PM Shafira Maulidina_51422531_2IA23.ipynb - Colaboratory
=================================================
===================
TUGAS SOAL
=================================================
===================
Instruksi Praktikum untuk mahasiswa FIKTI dan FTI (kecuali Teknik Industri,
Teknik Mesin dan Agroteknologi)
Lakukan teknik data cleaning untuk data yang bernilai NaN pada Dataset concrete. (Ubah data
bernilai NaN menjadi 0)
Transformasikan data pada kolom strength menjadi kolom baru bernama 'Category', dengan
ketentuan :
1. jika nilai >= 65 = 'Hard'
2. jika nilai >= 40 = 'Medium'
3. Jika nilai < 40 = 'Light'
Lakukan analisis histogram untuk pengaruh kolom age terhadap kolom strength, apakah yang
dapat Anda simpulkan ?
Cari tahu komposisi concrete yang memiliki kekuatan tertinggi dan terendah
Berikan kesimpulan akhir anda terhadap pengaruh komposisi concrete berdasarkan dataset
yang digunakan
=================================================
===================
JAWABAN
=================================================
===================
[Link] 3/8
11/8/23, 8:34 PM Shafira Maulidina_51422531_2IA23.ipynb - Colaboratory
1) Lakukan teknik data cleaning untuk data yang bernilai NaN pada
Dataset concrete. (Ubah data bernilai NaN menjadi 0)
concrete = [Link](0)
print([Link]().sum())
[Link]()
cement 0
slag 0
ash 0
water 0
superplastic 0
coarseagg 0
fineagg 0
age 0
strength 0
dtype: int64
cement slag ash water superplastic coarseagg fineagg age strength
0 141.3 212.0 0.0 203.5 0.0 971.8 748.5 28 29.89
1 168.9 42.2 124.3 158.3 10.8 1080.8 796.2 14 23.51
2 250.0 0.0 95.7 187.4 5.5 956.9 861.2 28 29.22
3 266.0 114.0 0.0 228.0 0.0 932.0 670.0 28 45.85
4 154.8 183.4 0.0 193.3 9.1 1047.4 696.7 28 18.29
2) Transformasikan data pada kolom strength menjadi kolom baru
bernama 'Category', dengan ketentuan :
1. jika nilai >= 65 = 'Hard'
2. jika nilai >= 40 = 'Medium'
3. Jika nilai < 40 = 'Light'
def get_category(x):
if x >= 65:
return 'Hard'
elif x >= 40:
return 'Medium'
return 'Light'
[Link] 4/8
11/8/23, 8:34 PM Shafira Maulidina_51422531_2IA23.ipynb - Colaboratory
concrete['category'] = concrete['strength'].apply(get_category)
[Link]()
cement slag ash water superplastic coarseagg fineagg age strength category
0 141.3 212.0 0.0 203.5 0.0 971.8 748.5 28 29.89 Light
1 168.9 42.2 124.3 158.3 10.8 1080.8 796.2 14 23.51 Light
2 250.0 0.0 95.7 187.4 5.5 956.9 861.2 28 29.22 Light
3 266.0 114.0 0.0 228.0 0.0 932.0 670.0 28 45.85 Medium
4 154.8 183.4 0.0 193.3 9.1 1047.4 696.7 28 18.29 Light
3) Lakukan analisis histogram untuk pengaruh kolom age terhadap
kolom strength, apakah yang dapat Anda simpulkan ?
fig, axes = [Link](1, 2, figsize=(12, 6))
[Link](concrete['age'], ax=axes[0]).set_title('histogram age')
[Link](concrete['strength'], ax=axes[1]).set_title('histogram strength')
Text(0.5, 1.0, 'histogram strength')
[Link](concrete['age'], concrete['strength'])
[Link] 5/8
11/8/23, 8:34 PM Shafira Maulidina_51422531_2IA23.ipynb - Colaboratory
<[Link] at 0x7db223a39f30>
4) Cari tahu komposisi concrete yang memiliki kekuatan tertinggi dan
terendah
print('komposisi terkuat')
concrete[concrete['strength']==concrete['strength'].max()]
komposisi terkuat
cement slag ash water superplastic coarseagg fineagg age strength category
950 389.9 189.0 0.0 145.9 22.0 944.7 755.8 91 82.6 Hard
print('komposisi terlemah')
concrete[concrete['strength']==concrete['strength'].min()]
komposisi terlemah
cement slag ash water superplastic coarseagg fineagg age strength category
230 108.3 162.4 0.0 203.5 0.0 938.2 849.0 3 2.33 Light
[Link] 6/8
11/8/23, 8:34 PM Shafira Maulidina_51422531_2IA23.ipynb - Colaboratory
5) Berikan kesimpulan akhir anda terhadap pengaruh komposisi
concrete berdasarkan dataset yang digunakan
[Link]([Link]())
<ipython-input-14-3d02f58beedb>:1: FutureWarning: The default value of numeric_only in D
[Link]([Link]())
<Axes: >
cols = [Link][:-2]
fig, axes = [Link](1, len(cols), figsize=(4 * len(cols), 4))
for i, col in enumerate(cols):
[Link](x=concrete[col], y=concrete['strength'], ax=axes[i])
[Link] 7/8
11/8/23, 8:34 PM Shafira Maulidina_51422531_2IA23.ipynb - Colaboratory
[Link] 8/8