Added loadout names and updated script

This commit is contained in:
WoodyXP
2023-02-05 15:21:23 +01:00
parent 4947f033c2
commit d8d63df944
2 changed files with 111 additions and 65 deletions

View File

@@ -1,12 +1,11 @@
import pandas as pd
import json
# pip3 install pandas, if pandas hasn't been installed yet
# Load data from an Excel file
df = pd.read_excel('data.xlsx')
# Group by 'Name', 'Fuel', and 'Roles' and aggregate 'Items - Name' and 'Items - Quantity'
grouped = df.groupby(['Name', 'Fuel', 'Roles'])['Items - Name', 'Items - Quantity'].agg(lambda x: list(x)).reset_index()
# Group by 'Name', 'Fuel', 'Loadout Name', and 'Roles' and aggregate 'Items - Name' and 'Items - Quantity'
grouped = df.groupby(['Name', 'Fuel', 'Loadout Name', 'Roles'])['Items - Name', 'Items - Quantity'].agg(lambda x: list(x)).reset_index()
# Convert the grouped data into the desired format
result = {}
@@ -25,13 +24,14 @@ for index, row in grouped.iterrows():
"quantity": quantity
} for item, quantity in zip(row['Items - Name'], row['Items - Quantity'])
],
"roles": [row['Roles']]
"roles": [row['Roles']],
"loadout_name": row['Loadout Name']
}
]
}
else:
loadouts = result[name]["loadouts"]
loadout = next((l for l in loadouts if l["roles"][0] == row['Roles']), None)
loadout = next((l for l in loadouts if l["loadout_name"] == row['Loadout Name']), None)
if loadout:
loadout["items"] += [
{
@@ -39,6 +39,7 @@ for index, row in grouped.iterrows():
"quantity": quantity
} for item, quantity in zip(row['Items - Name'], row['Items - Quantity'])
]
loadout["roles"].append(row['Roles'])
else:
result[name]["loadouts"].append({
"fuel": row['Fuel'],
@@ -48,8 +49,9 @@ for index, row in grouped.iterrows():
"quantity": quantity
} for item, quantity in zip(row['Items - Name'], row['Items - Quantity'])
],
"roles": [row['Roles']]
"roles": [row['Roles']],
"loadout_name": row['Loadout Name']
})
# Print the result with the correct indents, kinda cough
# Print the result with the correct indents
print(json.dumps(result, indent=2))