2.6 KiB
2.6 KiB
In [ ]:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score
In [ ]:
malware_dataset = pd.read_csv("MalwareArtifacts.csv", delimiter=',')In [ ]:
# Extracting artifacts smaples fields # MajourLinkerVersion, MajorImageVersion, MajorOperatingSystemVersion,DllCharacteristics
samples = malware_dataset.iloc[:, [1,2,3,4]].values
targets = malware_dataset.iloc[:, 8].valuesIn [ ]:
k_means = KMeans(n_clusters=2, max_iter=100)
k_means.fit(samples)In [ ]:
print("K-Means labels: " + str(k_means.labels_))
print("\n K-means clustering reulsts \n\n", pd.crosstab(targets, k_means.labels_, rownames = ["Observerd"], colnames=["Predicted"]))
print ("\nSilhouette coefficient: %0.3f" % silhouette_score(samples, k_means.labels_, metric='euclidean')) In [ ]: