当前位置: 首页 > news >正文

湖州童装网站bt种子磁力搜索

湖州童装网站,bt种子磁力搜索,河南品牌网站建设,网站开发和网页开发的区别前提要景: 公司有多个电商平台,需要自己每天从不同地方下载数据,整理成每日的销售日报。 使用PQ去 清洗整理 会使文件过大,筛选的时候会卡顿。 使用数据库会让表简洁明了。 import numpy as np import pandas as pd import sqlalc…

前提要景:

公司有多个电商平台,需要自己每天从不同地方下载数据,整理成每日的销售日报。

使用PQ去 清洗+整理 会使文件过大,筛选的时候会卡顿。

使用数据库会让表简洁明了。

import numpy as np
import pandas as pd
import sqlalchemy as sa
from sqlalchemy import create_engine
from datetime import datedef main():# ==================== 数据库连接配置 ====================db_config = {'user': 'your_username','password': 'your_password','host': 'localhost','port': 3306,'database': 'your_database'}connection_url = (f"mysql+pymysql://{db_config['user']}:{db_config['password']}"f"@{db_config['host']}:{db_config['port']}/{db_config['database']}")engine = create_engine(connection_url)try:# 获取今日日期today = date.today().strftime('%Y-%m-%d')# 获取明天日期用于范围查询tomorrow = (date.today() + timedelta(days=1)).strftime('%Y-%m-%d')# ==================== 数据读取 ====================df_orders = pd.read_sql("SELECT * FROM sale WHERE 发货时间 BETWEEN '2023-01-01' AND '2023-12-31'"engine)df_shops = pd.read_sql("SELECT * FROM base_shop", engine)df_products = pd.read_sql("SELECT * FROM base_goods", engine)# ==================== 数据清洗 ====================columns_to_drop = ["仓库", "成本", "价格"]existing_drop_cols = [col for col in columns_to_drop if col in df_orders.columns]orders_clean = df_orders.drop(columns=existing_drop_cols)# ==================== 合并商品信息 ====================product_cols = ['品名', '产品', '主计量单位', '主计量数量','计量单位2', '计量数量2']df_merged = pd.merge(orders_clean,df_products[product_cols],on='品名',how='left',validate="m:1")# ==================== 单位换算 ====================conditions = [df_merged['单位'] == df_merged['主计量单位'],df_merged['单位'] == df_merged['计量单位2']]choices = [df_merged['数量'] * df_merged['主计量数量'],df_merged['数量'] * df_merged['计量数量2']]df_merged['Total'] = np.select(conditions, choices, default=np.nan)# ==================== 合并店铺信息 ====================shop_cols = ['店铺']df_merged = pd.merge(df_merged,df_shops[shop_cols],on='店铺',how='left',suffixes=('', '_shop'))# ==================== 日期处理 ====================# 重命名日期列并转换类型df_merged.rename(columns={'发货时间': '日期'}, inplace=True)df_merged['日期'] = pd.to_datetime(df_merged['日期'], errors='coerce')# ==================== 按日期汇总 ====================group_cols = ['日期', '产品']final_summary = df_merged.groupby(group_cols)['Total'].sum().reset_index()# ==================== 提取年月 ====================final_summary['年'] = final_summary['日期'].dt.yearfinal_summary['月'] = final_summary['日期'].dt.month# ==================== 数据存储 ====================table_name = 'emoc_daily_summary'try:final_summary.to_sql(table_name,engine,if_exists='append',index=False,dtype={'日期': sa.Date(),'产品': sa.String(50),'Total': sa.Numeric(12,2),'年': sa.Integer(),'月': sa.Integer()})print(f"成功追加 {len(final_summary)} 条记录")except sa.exc.ProgrammingError as pe:if "1146" in str(pe):  # 处理表不存在的情况print("目标表不存在,正在创建新表...")final_summary.to_sql(table_name,engine,if_exists='fail',index=False,dtype={# 保持与上述相同的类型定义})print(f"成功创建表并写入 {len(final_summary)} 条记录")else:raiseexcept Exception as e:print(f"处理失败:{str(e)}")raiseif __name__ == "__main__":main()

  

产品存在单位转换,需要都转换为最小单位

改进前:

# 步骤:单位转换逻辑(增加空值处理)
def convert_quantity(row):try:order_unit = row['单位']order_qty = row['数量']# 处理可能的空值if pd.isna(order_unit) or pd.isna(row['主计量单位']):print(f"单位缺失:商品 {row['品名']}")return Noneif order_unit == row['主计量单位']:return order_qty * row['主计量数量']elif order_unit == row['计量单位2']:return order_qty * row['计量数量2']else:print(f"单位不匹配:商品 {row['品名']} 单位 {order_unit}")return Noneexcept KeyError as e:print(f"列缺失错误:{str(e)}")return None

改进后:

进行性能优化

# 使用矢量化操作替代apply
conditions = [df_merged['单位'] == df_merged['主计量单位'],df_merged['单位'] == df_merged['计量单位2'],df_merged['单位'] == df_merged['计量单位3']
]
choices = [df_merged['数量'] * df_merged['主计量数量'],df_merged['数量'] * df_merged['计量数量2'],df_merged['数量'] * df_merged['计量数量3']
]
df_merged['Total'] = np.select(conditions, choices, default=np.nan)
http://www.cadmedia.cn/news/12598.html

相关文章:

  • 电子商务概念百度网络优化推广公司
  • 营销网站制作全包seo快速排名优化
  • 山西省建设工程招投标监督网站搜索引擎优化案例分析
  • 网络购物平台网站优化推广方案
  • 江苏质监站网站做资料网图搜索识别
  • 动漫设计与制作专业代码广东seo推广公司
  • 南昌网站维护制作手机制作网页用什么软件
  • 软件测试工程师培训网站seo培训
  • 网站网站集约化建设网络热词2023
  • 长沙短视频代运营公司网络优化有前途吗
  • 生物商城网站建设百度手机助手app安卓版官方下载
  • 山东省建设工程招标中心网站51链
  • 查国外企业用什么软件郑州seo价格
  • 网站的建设公司哪个好北京seo公司wyhseo
  • html css javascipt 网站建设鹤壁搜索引擎优化
  • 一个正规的网站建设公司东莞软文推广
  • 买空间网官网昆明seocn整站优化
  • 快手官方网站音乐人怎么做新闻头条今日最新消息
  • 辽宁建设工程信息网新域名株洲seo快速排名
  • 三亚中国检科院生物安全中心门户网站建设sns营销
  • 射阳住房和城乡建设局网站sem网络推广公司
  • 网站导航栏一般有什么内容怎么建网站
  • 十大网站建设公司关键词歌词打印
  • 怎么制作平台谷歌seo新规则
  • 论网站建设的重要性郑州网站建设推广优化
  • 临西县建设网站seo交流
  • 网络建站优化科技你对网络营销的理解
  • 集团公司门户网站建设东莞最新疫情
  • 个人简历制作网站百度地图导航
  • 站长之家官网网址说说seo论坛