数据分析-25-电商用户行为可视化分析

文章目录

    • 0. 数据代码获取
    • 1. 项目介绍
      • 1.1 分析背景
      • 1.2 分析目的
      • 1.3 分析思路
    • 2. 数据清洗
      • 2.1 加载必要的库
      • 2.2 读取数据
      • 2.3 统计缺失值
      • 2.4 处理数据
        • a. 删除重复值
        • b. 转换时间格式
        • c. 提取日期和时间
        • d. 转换数据类型
    • 3. 分析内容
      • 3.1 用户活跃规律
        • a. 日均pv与uv
        • b. 日新增pv、uv趋势
        • c. 日活跃时段
      • 3.2 用户各类行为分析
        • a. 用户行为趋势(按日)
        • b. 用户行为数据(按时)
        • c 行为漏斗转化分析
    • 4. 结论及建议
      • 1. 用户活跃规律
      • 2. 用户行为
      • 3. 商品销售
      • 4. 用户价值
      • 5. 其他方面

0. 数据代码获取

关注公众号:『AI学习星球
回复:电商用户行为可视化分析 即可获取数据下载。
算法学习4对1辅导论文辅导核心期刊可以通过公众号或➕v:codebiubiubiu滴滴我
在这里插入图片描述


1. 项目介绍

1.1 分析背景

电商平台在所有媒体类型中,具有足够的特殊性,是兼具媒体场景和消费场景两大属性的平台,符合品效合一,也因此衍生出了贴合电商“搜索-购买-评价”链条的多种营销模式。随着电商营销产业链上消费行为数据的积累,海量数据中蕴含着无尽的价值,显现了用户不同的购物方式及爱好,基于此背景,本文利用阿里天池中淘宝电商用户数据进行分析。

  • 数据集包含了2014年11月18日至2014年12月18日之间,用户的完整行为数据(行为包括浏览、收藏、加购物车、购买)。
  • 数据集的每一行表示一条用户行为,由用户标识、商品标识、行为类型、用户位置的空间标识、商品分类标识和行为时间组成
字段名称字段描述
user_id用户标识,抽样&字段脱敏
item_id商品标识,字段脱敏
behavior_type用户对商品的行为类型,包括浏览、收藏、加购物车、购买,对应取值分别是1、2、3、4。
user_geohash用户位置的空间标识,可以为空,由经纬度通过保密的算法生成
item_category商品分类标识,字段脱敏
time精确到小时级别

1.2 分析目的

通过对淘宝App用户行为数据分析,为以下问题提供解释和改进建议:

  1. 用户在不同时间周期下的活跃规律,了解用户行为习惯;
  2. 分析用户使用App过程中的常见电商分析指标,确定各个环节的流失率,找到需要改进的环节;
  3. 用户对不同种类商品的偏好,提出针对不同商品的营销策略;
  4. 提取出最具价值的核心付费用户群,对这部分用户的行为进行分析。

1.3 分析思路

针对提出的问题,主要从用户行为时间维度、指标转化率、商品购买情况、用户价值等四个方面进行分析。

在这里插入图片描述

2. 数据清洗

2.1 加载必要的库

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
#导入数据并查看头部
user=pd.read_csv('tianchi_mobile_recommend_train_user.csv')
user.head()

在这里插入图片描述

2.2 读取数据

df.info()

在这里插入图片描述

#查看统计信息
df.describe()

在这里插入图片描述

2.3 统计缺失值

user.isnull().sum()

在这里插入图片描述
因为不做地理数据的分析user_geohash 这列的缺失值不做处理。

2.4 处理数据

a. 删除重复值
df.drop_duplicates(keep='last',inplace=True)
b. 转换时间格式
df['time'] = pd.to_datetime(df.time)
c. 提取日期和时间
df['dates'] = df.time.dt.date
df['month'] = df.dates.values.astype('datetime64[M]')
df['hours'] = df.time.dt.hour

在这里插入图片描述

d. 转换数据类型
df['behavior_type'] = df['behavior_type'].apply(str)
df['user_id'] = df['user_id'].apply(str)
df['item_id'] = df['item_id'].apply(str)

关注公众号:『AI学习星球
回复:电商用户行为可视化分析 即可获取数据下载。
算法学习4对1辅导论文辅导核心期刊可以通过公众号或➕v:codebiubiubiu滴滴我
在这里插入图片描述


3. 分析内容

可视化内容主要利用的是pyecharts库,其数据交互性较好

import pyecharts.options as opts
from pyecharts.charts import *

3.1 用户活跃规律

a. 日均pv与uv

提取出每日pv与uv的数据

pv_day=user[user.behavior_type=="1"].groupby("dates")["behavior_type"].count()
uv_day=user[user.behavior_type=="1"].drop_duplicates(["user_id","dates"]).groupby("dates")["user_id"].count()

做趋势图

# 加载库
import pyecharts.options as opts
from pyecharts.charts import Line
from pyecharts.charts import Grid
import numpy as np# 做出每天的pv与uv趋势图
attr=list(pv_day.index)
pv=(Line(init_opts=opts.InitOpts(width="1000px",height="500px")).add_xaxis(xaxis_data=attr).add_yaxis("pv",np.around(pv_day.values/10000,decimals=2),label_opts=opts.LabelOpts(is_show=False)).add_yaxis(series_name="uv",yaxis_index=1,y_axis=np.around(uv_day.values/10000,decimals=2),label_opts=opts.LabelOpts(is_show=False),).extend_axis(yaxis=opts.AxisOpts(name="uv",type_="value",min_=0,max_=1.6,interval=0.4,axislabel_opts=opts.LabelOpts(formatter="{value} 万人"),)).set_global_opts(tooltip_opts=opts.TooltipOpts(is_show=True,trigger="axis",axis_pointer_type="cross"),xaxis_opts=opts.AxisOpts(type_="category",axispointer_opts=opts.AxisPointerOpts(is_show=True,type_="shadow"),),yaxis_opts=opts.AxisOpts(name="pv",type_="value",min_=0,max_=100,interval=20,axislabel_opts=opts.LabelOpts(formatter="{value} 万次"),axistick_opts=opts.AxisTickOpts(is_show=True),splitline_opts=opts.SplitLineOpts(is_show=True),),title_opts=opts.TitleOpts(title="pv与uv趋势图"),)
)pv.render_notebook()

在这里插入图片描述

从趋势图来看,浏览量和浏览人数在双十二活动期间有一个猛烈的上涨,在活动过后趋势又趋于平稳,可利用活动带来的巨大流量,提升用户的购买转化率。

b. 日新增pv、uv趋势
pv_uv = pd.concat([pv_day, uv_day], join='outer', axis=1)
pv_uv.columns = ['pv_day', 'uv_day']new_day=pv_uv.diff()
new_day.columns=['new_pv','new_uv']
new_day

在这里插入图片描述

attr = new_day.index
v = new_day.new_uv
w = new_day.new_pvli=(Line(init_opts=opts.InitOpts(width="1000px",height="500px")).add_xaxis(xaxis_data=attr).add_yaxis("新增pv",w,label_opts=opts.LabelOpts(is_show=False)).extend_axis(yaxis=opts.AxisOpts(name="新增uv",type_="value",min_=-2000,max_=1600,interval=400,axislabel_opts=opts.LabelOpts(formatter="{value}"),)).set_global_opts(tooltip_opts=opts.TooltipOpts(is_show=True, trigger="axis", axis_pointer_type="cross"),xaxis_opts=opts.AxisOpts(type_="category",axispointer_opts=opts.AxisPointerOpts(is_show=True, type_="shadow"),),yaxis_opts=opts.AxisOpts(name="新增pv",type_="value",min_=-350000,max_=250000,interval=100000,axislabel_opts=opts.LabelOpts(formatter="{value}"),axistick_opts=opts.AxisTickOpts(is_show=True),splitline_opts=opts.SplitLineOpts(is_show=True),),title_opts=opts.TitleOpts(title="pv、uv差异分析"),)
)
il=(Line().add_xaxis(xaxis_data=attr).add_yaxis("新增uv",v,yaxis_index='1',label_opts=opts.LabelOpts(is_show=False),)
)
c=li.overlap(il)
c.render_notebook()

在这里插入图片描述

从新增pv、uv可以看出双十二活动期间更加明显的流量波动。

c. 日活跃时段
#转换按小时统计数据
pv_hour = user[user.behavior_type == '1'].groupby('hours')['behavior_type'].count()
uv_hour = user[user.behavior_type == '1'].drop_duplicates(['user_id','hours']).groupby('hours')['user_id'].count()
attr=list(pv_hour.index)
#作图
pvh=(Line(init_opts=opts.InitOpts(width="1000px",height="500px")).add_xaxis(xaxis_data=attr).add_yaxis("pv",np.around(pv_hour.values/1000,decimals=2),label_opts=opts.LabelOpts(is_show=False)).add_yaxis(series_name="uv",yaxis_index=1,y_axis=np.around(uv_hour.values/1000,decimals=2),label_opts=opts.LabelOpts(is_show=False),).extend_axis(yaxis=opts.AxisOpts(name="uv",type_="value",min_=0,max_=16,interval=4,axislabel_opts=opts.LabelOpts(formatter="{value} 千人"),)).set_global_opts(tooltip_opts=opts.TooltipOpts(is_show=True,trigger="axis",axis_pointer_type="cross"),xaxis_opts=opts.AxisOpts(type_="category",axispointer_opts=opts.AxisPointerOpts(is_show=True,type_="shadow"),),yaxis_opts=opts.AxisOpts(name="pv",type_="value",min_=0,max_=140,interval=20,axislabel_opts=opts.LabelOpts(formatter="{value} 千次"),axistick_opts=opts.AxisTickOpts(is_show=True),splitline_opts=opts.SplitLineOpts(is_show=True),),title_opts=opts.TitleOpts(title="pv与uv趋势图",subtitle="按小时"),))
pvh.render_notebook()

在这里插入图片描述

可以发现0点到6点是一个低谷时段,大部分用户在休息,6点到10点是用户访问浏览的一个迅速增长时段,10点到18点访问趋势较平稳,晚上19点到23点是用户最活跃的时段,可以利用这段时间向用户推荐其兴趣爱好的商品,提高转化率。

3.2 用户各类行为分析

a. 用户行为趋势(按日)
shopping_cart= user[user.behavior_type == '3'].groupby('dates')['behavior_type'].count()
collect=user[user.behavior_type=='2'].groupby('dates')['behavior_type'].count()
buy=user[user.behavior_type=='4'].groupby('dates')['behavior_type'].count()attr_a=list(shopping_cart.index)
v_1=shopping_cart.values.tolist()
v_2=collect.values.tolist()
v_3=buy.values.tolist()b=(Line().add_xaxis(xaxis_data=attr_a).add_yaxis("加购人数",v_1,label_opts=opts.LabelOpts(is_show=False)).add_yaxis("收藏人数",v_2,label_opts=opts.LabelOpts(is_show=False)).add_yaxis("购买人数",v_3,label_opts=opts.LabelOpts(is_show=False)).set_global_opts(title_opts=opts.TitleOpts(title="不同时期用户行为数据"))
)
b.render_notebook()

在这里插入图片描述

可以看出,加入购物车、收藏、购买等行为与浏览量的量级是不在一个等级的,但趋势是较一致的。

b. 用户行为数据(按时)

由于数据里面包含双十二大促的数据,因此整理分析用户的不同时段行为可能会导致分析结果与实际差异较大,因此拆分开来做不同的对比分析。

  • 活动期间
user['dates']=pd.to_datetime(user['dates'])
active=user[user["dates"].isin(["2014/12/11","2014/12/12","2014/12/13"])]
daily=user[~user["dates"].isin(["2014/12/11","2014/12/12","2014/12/13"])]from pyecharts.charts import Bar
# 活动数据
cart_h= active[active.behavior_type == '3'].groupby('hours')['behavior_type'].count()
collect_h=active[active.behavior_type=='2'].groupby('hours')['behavior_type'].count()
buy_h=active[active.behavior_type=='4'].groupby('hours')['behavior_type'].count()
uv_h=active[active.behavior_type== '1'].groupby('hours')['user_id'].count()attr_h=list(cart_h.index)
h1=np.around(cart_h.values/3,decimals=0).tolist()
h2=np.around(collect_h.values/3,decimals=0).tolist()
h3=np.around(buy_h.values/3,decimals=0).tolist()
h4=np.around(uv_h.values/3,decimals=0).tolist()h=(Line(init_opts=opts.InitOpts(width="1000px",height="500px")).add_xaxis(xaxis_data=attr_h).add_yaxis("加购人数",h1,label_opts=opts.LabelOpts(is_show=False)).add_yaxis("收藏人数",h2,label_opts=opts.LabelOpts(is_show=False)).add_yaxis("购买人数",h3,label_opts=opts.LabelOpts(is_show=False)).set_global_opts(xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=15)),title_opts=opts.TitleOpts(title="日均各时段活动用户行为",pos_top="48%"),legend_opts=opts.LegendOpts(pos_top="48%"),)
)
bar=(Bar().add_xaxis(xaxis_data=attr_h).add_yaxis("浏览人数",h4,label_opts=opts.LabelOpts(is_show=False)).set_global_opts(title_opts=opts.TitleOpts(title="活动pv对比数据"),)
)ggrid = (Grid().add(bar, grid_opts=opts.GridOpts(pos_bottom="60%")).add(h, grid_opts=opts.GridOpts(pos_top="60%"))
)
ggrid.render_notebook()

在这里插入图片描述

这是三天活动的日均数据,可以发现活动期间是商家在起主导作用大促集中在零点,因此用户的购买高峰也出现在0点,点击浏览的高峰集中在晚上的21点到22点之间,因此商家可以在20点前改好促销页面吸引顾客参加0点的活动。

  • 日常期间
#转换日常期间行为数据
cart_d= daily[daily.behavior_type == '3'].groupby('hours')['behavior_type'].count()
collect_d=daily[daily.behavior_type=='2'].groupby('hours')['behavior_type'].count()
buy_d=daily[daily.behavior_type=='4'].groupby('hours')['behavior_type'].count()
uv_d=daily[daily.behavior_type== '1'].groupby('hours')['user_id'].count()
attr_d=list(cart_d.index)
d1=np.around(cart_d.values/28,decimals=0).tolist()
d2=np.around(collect_d.values/28,decimals=0).tolist()
d3=np.around(buy_d.values/28,decimals=0).tolist()
d4=np.around(uv_d.values/3,decimals=0).tolist()
#作图
d=(Line(init_opts=opts.InitOpts(width="1000px",height="500px")).add_xaxis(xaxis_data=attr_d).add_yaxis("加购人数",d1,label_opts=opts.LabelOpts(is_show=False)).add_yaxis("收藏人数",d2,label_opts=opts.LabelOpts(is_show=False)).add_yaxis("购买人数",d3,label_opts=opts.LabelOpts(is_show=False)).set_global_opts(xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=15)),title_opts=opts.TitleOpts(title="日均各时段活动用户行为",pos_top="48%"),legend_opts=opts.LegendOpts(pos_top="48%"),).set_series_opts(markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max",name="最大值"),opts.MarkPointItem(type_="min",name="最小值"),])))
y=(Bar().add_xaxis(xaxis_data=attr_d).add_yaxis("浏览人数",d4,label_opts=opts.LabelOpts(is_show=False)).set_global_opts(title_opts=opts.TitleOpts(title="日常pv对比数据"),).set_series_opts(markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="max",name="最大值"),opts.MarkPointItem(type_="min",name="最小值"),])))
ggrid = (Grid().add(y, grid_opts=opts.GridOpts(pos_bottom="60%")).add(d, grid_opts=opts.GridOpts(pos_top="60%")))
ggrid.render_notebook()

在这里插入图片描述

与大促不同的是日常期间购买人数从上午10点到晚上23点变化都不会太大,高峰出现在晚上21点,pv、加购、收藏的高峰出现在晚上21点到22点之间,说明大家都喜欢在晚上这个时间段浏览商品,日常时可以集中在这个时段进行促销活动。

  • 购买率
# 活动时购买率
hour_buy_user_num = active[active.behavior_type == '4'].drop_duplicates(['user_id','dates', 'hours']).groupby('hours')['user_id'].count()
hour_active_user_num = active.drop_duplicates(['user_id','dates', 'hours']).groupby('hours')['user_id'].count()
hour_buy_rate = hour_buy_user_num / hour_active_user_num
attr_o = list(hour_buy_user_num.index)
vo_2 =np.around(hour_buy_rate.values,decimals=2) 
# 日常时购买率
hour_buy_daily_num = daily[daily.behavior_type == '4'].drop_duplicates(['user_id','dates', 'hours']).groupby('hours')['user_id'].count()
hour_active_daily_num = daily.drop_duplicates(['user_id','dates', 'hours']).groupby('hours')['user_id'].count()
daily_buy_rate = hour_buy_daily_num / hour_active_daily_num
vi_2 =np.around(daily_buy_rate.values,decimals=2) hbu=(Line().add_xaxis(xaxis_data=attr_o).add_yaxis("日常购买率",vi_2,).add_yaxis("活动购买率",vo_2,).set_global_opts(title_opts=opts.TitleOpts(title="不同时段购买率"))
)hbu.render_notebook()

在这里插入图片描述

日常时的购买率最高的出现在上午10点到下午16点间,还有晚上的21点左右,和活动期间的购买率不同,但是明显晚上21点已经在分析中出现比较多的峰值,因此可以考虑这个时段做做吸引用户购买的措施。

c 行为漏斗转化分析
  • 活动期间
from pyecharts.charts import Funnel# 活动转化
a_pv=active[active.behavior_type=="1"]["user_id"].count()
a_cart=active[active.behavior_type=="3"]["user_id"].count()
a_collect=active[active.behavior_type=="2"]["user_id"].count()
a_buy=active[active.behavior_type=="4"]["user_id"].count()a_attr=["点击","加入购物车","收藏","购买"]
values=[np.around((a_pv/a_pv*100),2),np.around((a_cart/a_pv*100),2),np.around((a_collect/a_pv*100),2),np.around((a_buy/a_pv*100),2),]data = [[a_attr[i], values[i]] for i in range(len(a_attr))]a=(Funnel().add(series_name="用户行为",data_pair=data,gap=2,tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{a} <br/>{b} : {c}%",is_show=True),label_opts=opts.LabelOpts(is_show=True, position="ourside"),itemstyle_opts=opts.ItemStyleOpts(border_color="#fff", border_width=1),).set_global_opts(title_opts=opts.TitleOpts(title="用户转化漏斗", subtitle="活动"))
)a.render_notebook()

在这里插入图片描述

活动期间日均从点击到加入购物车的转化率只有5.01%,购买的只有2.12%,说明点击浏览量不少,但是吸引不了顾客购买,虽然是大的活动,但是转化率还是很低的,可以从提高加购率和收藏率着手,从而吸引顾客购买。

  • 日常期间
# 日常转化
l_pv=daily[daily.behavior_type=="1"]["user_id"].count()
l_cart=daily[daily.behavior_type=="3"]["user_id"].count()
l_collect=daily[daily.behavior_type=="2"]["user_id"].count()
l_buy=daily[daily.behavior_type=="4"]["user_id"].count()l_attr=["点击","加入购物车","收藏","购买"]
valuel=[np.around((l_pv/l_pv*100),2),np.around((l_cart/l_pv*100),2),np.around((l_collect/l_pv*100),2),np.around((l_buy/l_pv*100),2),]datal = [[l_attr[i], valuel[i]] for i in range(len(l_attr))]dy=(Funnel().add(series_name="用户行为",data_pair=datal,gap=2,tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{a} <br/>{b} : {c}%",is_show=True),label_opts=opts.LabelOpts(is_show=True, position="ourside"),itemstyle_opts=opts.ItemStyleOpts(border_color="#fff", border_width=1),).set_global_opts(title_opts=opts.TitleOpts(title="用户转化漏斗", subtitle="日常"))
)
dy.render_notebook()

在这里插入图片描述


关注公众号:『AI学习星球
回复:电商用户行为可视化分析 即可获取数据下载。
算法学习4对1辅导论文辅导核心期刊可以通过公众号或➕v:codebiubiubiu滴滴我
在这里插入图片描述


4. 结论及建议

本次分析从四个不同的角度提出了问题,下面根据分析数据以及可视化结果给出结论和建议:

1. 用户活跃规律

  • 在以日为单位的时间尺度下,用户在双十二活动期间比平常时期要更加活跃,建议合理有效的根据时间维度进行拉新促销活动。
  • 平时一天中,大部分用户在19时到23时会比较活跃,其中21到22时,是一天当中最活跃的时段,成交量也是这一时段最高。建议可以在用户活跃的高峰期进行推广以使运营效果最大化,此时使用人数最多,活动容易触达用户,营销活动的形式可以通过促销、拼团、直播等形式进行。

2. 用户行为

从浏览到有购买意向只有1.4%的转化率,当然有一部分用户是直接购买,但也说明大多数用户以浏览页面为主而购买转化较少,此处为转化漏斗中需要改善和提高的环节。针对提高转化率提出一些建议:

  • 优化电商平台的搜索匹配度和推荐策略,主动根据用户喜好推荐相关的商品,优化商品搜索的准确度和聚合能力,对搜索结果排序优先级进行优化。
  • 在商品详情页的展示上突出用户关注的重点信息,精简信息流的呈现方式,减少用户寻找信息的成本。
  • 优化加入购物车和收藏按键的触达,用户在滑屏时也能方便触达,增加功能使用的次数。

3. 商品销售

针对浏览量高而销量不高的这部分商品,需要提高的是用户从点击进入商品详情页到最终购买的体验。

  • 商品详情页的实际价格是否相比展示价格偏差过大,有的商家为了吸引用户点击在商品展示页投放的价格具有较强吸引力,但实际价格偏高,在用户心中反而引起反感。
  • 详情页的信息流展示是否合理,是否将用户最想看到的部分置于容易看到的位置,便于信息的获取。
  • 优化商品展示的形式,利用视频等方式给用户更直观的感受,提高照片的美观程度。
  • 评论区评价管理,尤其对于差评区的用户反馈进行认真对待,提高自身服务质量。
  • 通过将畅销商品和非畅销商品进行捆绑销售,当然在做这些活动之前,可以先尝试做 A/B 测试,找到最适合的销售方式和最合适的商品类型捆绑,不断提升转化率。

4. 用户价值

  • 体系中的重要价值客户,需要重点关注,并且活动投放时需谨慎对待。
  • 对于占比最高的重要保持客户(忠诚度较高,购买能力不足),适当给予折扣或施行捆绑销售销售政策。
  • 对于重要发展客户,可以通过传递新品,通知店铺活动信息。
  • 对于挽留客户,运营活动可以重点针对这部分用户,提高用户使用产品的频率,可以通过拼团打折、积分兑换等活动唤起用户注意力。

5. 其他方面

  • 提高留存:淘宝APP的留存相对而言较为稳定,让用户提高、保持使用淘宝电商平台的频率相对而言更加重要。
  • 用户推荐:淘宝本身用户基数庞大,知名度高,个人认为在一二线城市的用户基本已经达到饱和,传播工作需要针对三四线城市的渠道下沉,在这些地区针对用户价格敏感度高的特性开展类似拼多多的拼团转发和打折促销活动,扩大这部分用户的使用率。

关注公众号:『AI学习星球
回复:电商用户行为可视化分析 即可获取数据下载。
算法学习4对1辅导论文辅导核心期刊可以通过公众号或➕v:codebiubiubiu滴滴我
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/231338.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 修改主机名称并通过主机名称访问服务器

一、命令提示符简介 当我们打开终端的时候&#xff0c;我们要输入命令的左边就是命令提示符&#xff0c;如下图&#xff0c;接下来介绍下他们分别代表什么含义 1、root 和 xhf 表示的是当前登录的用户名称。 2、node2 表示的当前的主机名称。 3、~ 表示的是当前的目录 4、# 表示…

Plantuml之甘特图语法介绍(二十八)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

柯桥职场英语中千万别把英文邮件中的“OOO”理解成“哦哦哦”!不然可就尴尬了!

有的同学工作中跟老外打交道比较多 尤其是写邮件&#xff0c;除了要把事情交代清楚 还有一些缩写我们也必须掌握 就拿发邮件时老外最爱用到的“OOO”来说 千万不要把“OOO”理解成“噢噢噢” 今天给大家分享几个关于邮件的常用表达 它们真正的意思你都知道吗 01 “OOO”可…

014、枚举与模式匹配

枚举类型&#xff0c;通常也被简称为枚举&#xff0c;它允许我们列举所有可能的值来定义一个类型。在本篇文章中&#xff0c;我们首先会定义并使用一个枚举&#xff0c;以向你展示枚举是如何连同数据来一起编码信息的。 接着&#xff0c;我们会讨论一个特别有用的枚举&#xff…

Minitab 21软件安装包下载及安装教程

Minitab 21下载链接&#xff1a;https://docs.qq.com/doc/DUkNHZVhwTXhtTFla 1.选中下载好的安装包&#xff0c;鼠标右键解压到”Minitab 21“文件夹 2.选中”Setup.exe“&#xff0c;鼠标右击选择“以管理员身份运行” 3.点击“下一步” 4.点击“是” 5.点击“下一步” 6.勾选…

ChatGPT绘制全球植被类型分布图、生物量图、土壤概念图、处理遥感数据并绘图、病毒、植物、动物细胞结构图

以ChatGPT、LLaMA、Gemini、DALLE、Midjourney、Stable Diffusion、星火大模型、文心一言、千问为代表AI大语言模型带来了新一波人工智能浪潮&#xff0c;可以面向科研选题、思维导图、数据清洗、统计分析、高级编程、代码调试、算法学习、论文检索、写作、翻译、润色、文献辅助…

信息系统安全——缓冲区溢出和恶意代码分析

实验 1 缓冲区溢出和恶意代码分析 1.1 实验名称 《缓冲区溢出和恶意代码分析》 1.2 实验目的 1 、熟练使用恶意代码分析工具 OD 和 IDA 2 、通过实例分析&#xff0c;掌握缓冲区溢出的详细机理 3 、通过实例&#xff0c;熟悉恶意样本分析过程 1.3 实验步骤及内容 第一阶段&…

ClickHouse基础知识(五):ClickHouse的SQL 操作

基本上来说传统关系型数据库&#xff08;以 MySQL 为例&#xff09;的 SQL 语句&#xff0c;ClickHouse 基本都支持&#xff0c; 这里不会从头讲解 SQL 语法只介绍 ClickHouse 与标准 SQL&#xff08;MySQL&#xff09;不一致的地方。 1. Insert 基本与标准 SQL&#xff08;My…

71内网安全-域横向网络传输应用层隧道技术

必备知识点&#xff1b; 代理和隧道技术的区别&#xff1f; 代理主要解决的是网络访问问题&#xff0c;隧道是对过滤的绕过&#xff0c; 隧道技术是为了解决什么 解决被防火墙一些设备&#xff0c;ids&#xff08;入侵检测系统&#xff09;进行拦截的东西进行突破&#xff0…

迪杰斯特拉(Dijkstra)算法详解

【专栏】数据结构复习之路 这篇文章来自上述专栏中的一篇文章的节选&#xff1a; 【数据结构复习之路】图&#xff08;严蔚敏版&#xff09;两万余字&超详细讲解 想了解更多图论的知识&#xff0c;可以去看看本专栏 Dijkstra 算法讲解&#xff1a; 迪杰斯特拉算法(Di…

pip install skopt安装显示没有对应版本问题及解决

一、问题描述以及分析 &#xff08;一&#xff09;问题描述 ModuleNotFoundError: No module named skopt pip install skopt Note: you may need to restart the kernel to use updated packages.ERROR: Could not find a version that satisfies the requirement skopt (fro…

C语言编译器(C语言编程软件)完全攻略(第十三部分:VS2010使用教程(使用VS2010编写C语言程序))

介绍常用C语言编译器的安装、配置和使用。 十三、VS2010使用教程&#xff08;使用VS2010编写C语言程序&#xff09; 提示&#xff1a;VS2010 可以在 XP、Win7 和 Win8 下完美运行&#xff0c;但在 Win10 下可能会有兼容性问题&#xff0c;使用 Win10 的读者建议安装 VS2015 或…

JDBC练习查询所有内容

MySql表代码 -- 删除tb_brand表 drop table if exists tb_brand; -- 创建tb_brand表 create table tb_brand (-- id 主键id int primary key auto_increment,-- 品牌名称brand_name varchar(20),-- 企业名称company_name varchar(20),-- 排序字段ordered int…

解决VNC连接Ubuntu服务器打开终端出现闪退情况

服务器环境 阿里云ECS服务器 操作系统&#xff1a;Ubuntu 20.0.4 如何使用VNC连接阿里云ECS服务器 1.阿里云官方指导&#xff1a;通过VNC搭建Ubuntu 18.04和20.04图形界面 2.新手入门ECS——ubuntu 20.04安装图形化界面和本地VNC连接 问题描述 使用VNC连接上新申请阿里云服…

C# 如何读取Excel文件

当处理Excel文件时&#xff0c;从中读取数据是一个常见的需求。通过读取Excel数据&#xff0c;可以获取电子表格中包含的信息&#xff0c;并在其他应用程序或编程环境中使用这些数据进行进一步的处理和分析。本文将分享一个使用免费库来实现C#中读取Excel数据的方法。具体如下&…

LLM之RAG实战(九)| 高级RAG 03:多文档RAG体系结构

在RAG&#xff08;检索和生成&#xff09;这样的框架内管理和处理多个文档有很大的挑战。关键不仅在于提取相关内容&#xff0c;还在于选择包含用户查询所寻求的信息的适当文档。基于用户查询对齐的多粒度特性&#xff0c;需要动态选择文档&#xff0c;本文将介绍结构化层次检索…

实现文件拖拽上传的功能

1 先来看一下效果 2 我们来看一下代码执行的结果&#xff1a; 我们创建目标的容器盒子 和可以展示数据的ul 监听进入目前盒子的事件 3 文件进入目标容器中解析文件

使用echarts制作柱状图并且下方带表格

实现效果: 调试地址: Examples - Apache ECharts 源码: option { title: { left: center, top: 0, text: 2022-05月 制造产量 达成情况(单位: 吨) (图1)\n\n集团目标产量: 106,675吨 集团实际产量: 2,636吨, textStyle:{ fontSize:20, colo…

3D Gaussian Splatting复现

最近3D Gaussian Splatting很火&#xff0c;网上有很多复现过程&#xff0c;大部分都是在Windows上的。Linux上配置环境会方便简单一点&#xff0c;这里记录一下我在Linux上复现的过程。 Windows下的环境配置和编译&#xff0c;建议看这个up主的视频配置&#xff0c;讲解的很细…

QT基础知识

QT基础知识 文章目录 QT基础知识1、QT是什么2、Qt的发展史3、为什么学习QT4、怎么学习QT1、工程的创建(环境的下载与安装请百度&#xff09;2、创建的工程结构说明3、怎么看帮助文档1、类使用的相关介绍2. 查看所用部件&#xff08;类&#xff09;的相应成员函数&#xff08;功…