46 lines
1.3 KiB
Python
46 lines
1.3 KiB
Python
import PySimpleGUI as sg
|
||
import pandas as pd
|
||
|
||
file_list_column = [
|
||
[sg.Text('Choose CSV File')],
|
||
[sg.Text('File Location: '), sg.Input(size=(25, 1), key="-IN2-",
|
||
change_submits=True), sg.FileBrowse(key="-IN-")],
|
||
[sg.Button('Submit')],
|
||
[sg.Output(size=(60, 40))]]
|
||
|
||
layout = [[(file_list_column)]]
|
||
|
||
window = sg.Window('VIDEOTRON DATA CALCULATOR', layout)
|
||
|
||
while True:
|
||
event, values = window.read()
|
||
|
||
if event == sg.WIN_CLOSED or event == "Exit":
|
||
break
|
||
|
||
if event == 'Submit':
|
||
|
||
pd.set_option('display.max_rows', None)
|
||
|
||
df = pd.read_csv(
|
||
values["-IN2-"], sep=";", encoding='unicode_escape', decimal=",", usecols=[9, 20, 39])
|
||
|
||
df.replace('UTILISATION POUR LE', '', regex=True, inplace=True)
|
||
|
||
df = df.set_axis(['NOM', 'B', 'DATA'], axis=1)
|
||
|
||
df = df[df['B'].str.contains('DONN')]
|
||
|
||
df = df.replace('é', 'e', regex=True)
|
||
df = df.replace('Ã', 'E', regex=True)
|
||
df = df.replace('E´', 'o', regex=True)
|
||
df = df.replace('E§', 'c', regex=True)
|
||
df = df.replace('', '', regex=True)
|
||
|
||
df['DATA'] = df['DATA'].apply(
|
||
lambda x: float(x.split()[0].replace(',', '.')))
|
||
|
||
datasum = df.groupby('NOM')['DATA'].sum(min_count=1).reset_index()
|
||
|
||
print(datasum)
|