22 lines
No EOL
811 B
Python
Executable file
22 lines
No EOL
811 B
Python
Executable file
#!/usr/bin/env python3
|
|
|
|
import pandas as pd
|
|
import os
|
|
|
|
def main():
|
|
dfs = pd.read_csv(os.path.dirname(__file__) + '/metrics/feature_vectors_labeled.csv')
|
|
metrics = ['MTH', 'FLD', 'RFC', 'INT', 'SZ', 'CPX', 'EX', 'RET', 'BCM',
|
|
'NML', 'WRD', 'DCM']
|
|
df = dfs.agg(dict([(m, ['min', 'max', 'mean']) for m in metrics])).reset_index()
|
|
df = pd.melt(df, id_vars=['index'], value_vars=metrics, var_name='metric') \
|
|
.pivot(index='metric', columns=['index'], values=['value']) \
|
|
.reset_index()
|
|
df.columns = sorted([c[1] for c in df.columns])
|
|
df = df.reindex([df.columns[0]] + list(reversed(sorted(df.columns[1:]))), axis=1)
|
|
print(df.to_markdown(index=False))
|
|
|
|
print()
|
|
print(dfs.groupby('buggy').count().loc[:, 'class_name'])
|
|
|
|
if __name__ == '__main__':
|
|
main() |