Untitled

 avatar
unknown
plain_text
a year ago
3.8 kB
6
Indexable
import pandas as pd
import pathlib

pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 500)
pd.set_option('display.width', 1000)

data = pd.read_excel('data_титоренко_2.xlsx', header=0, sheet_name=0)
data = data.drop(data.index[0])
data=data.reset_index(drop=True)
data['Год'] = data['Год'].astype(int)
filtered_data = data[(data['Канал Продаж Наименование'] == 'Мелкий опт') & (data['Год'] == 2023) & (data['Месяц'] == 'окт')]
data_pivot = filtered_data.groupby('Сделка Код')[['Количество (ед.тонн)', 'Выручка без НДС, тыс.  RUB', 'Себестоимость, тыс.  RUB', 'Транспортные расходы, тыс.  RUB']].agg('sum')
updated_filtered_data = filtered_data.merge(data_pivot, how='left', on='Сделка Код', suffixes=('', '_pivot'))

updated_filtered_data['Регистратор Вид Документа'].value_counts()

Регистратор Вид Документа
Реализация товаров и услуг                71634
Закрытие месяца (Управленческий учет)     63936
Отчет комиссионера (агента) о продажах    50828
Регламентная операция                     24026
Корректировка реализации                   1447
Операция                                     33
Name: count, dtype: int64

updated_filtered_data[updated_filtered_data['Регистратор Вид Документа']=='Реализация товаров и услуг']

condition = updated_filtered_data['Регистратор Наименование'].str.contains('Реализация товаров и услуг')

updated_filtered_data.loc[condition, 'Себестоимость, тыс.  RUB'] = updated_filtered_data.loc[condition, 'Себестоимость, тыс.  RUB_pivot']
updated_filtered_data.loc[condition, 'Транспортные расходы, тыс.  RUB'] = updated_filtered_data.loc[condition, 'Транспортные расходы, тыс.  RUB_pivot']
updated_filtered_data.drop(columns=['Себестоимость, тыс.  RUB_pivot', 'Транспортные расходы, тыс.  RUB_pivot', 'Количество (ед.тонн)_pivot', 'Выручка без НДС, тыс.  RUB_pivot'], inplace=True)
updated_filtered_data.head()


updated_filtered_data_realization = updated_filtered_data[updated_filtered_data['Регистратор Наименование'].str.contains('Реализация товаров и услуг')]
final_data = updated_filtered_data_realization.reset_index(drop=True)

final_data['Маржинальный доход без НДС, тыс. RUB'] = final_data['Выручка без НДС, тыс.  RUB'] - final_data['Себестоимость, тыс.  RUB'] - final_data['Транспортные расходы, тыс.  RUB']

sql_data_pdmi = final_data.copy()
sql_data_pdmi['Месяц'] = sql_data_pdmi['Месяц'].replace('окт', 'октябрь')

sql_data_pdmi = sql_data_pdmi.drop(columns=['Выручка без НДС, тыс.  RUB', 
                                            'Себестоимость, тыс.  RUB', 
                                            'Себестоимость нефтепродукта, тыс.  RUB', 
                                            'Себестоимость транспортных расходов, тыс.  RUB', 
                                            'Транспортные расходы, тыс.  RUB'])

sql_data_pdmi.to_csv('sql_data_pdmi.csv', index=False, sep=';', lineterminator='\t')
Editor is loading...
Leave a Comment