python购物淫秽数据分析(2)
淘宝大数据的游戏,我重新提高自己的思维方式,
插件和代码前前后后写在六个版本,但最好的结果其实是我的第一次2第二码。这让我很惊讶,
但它也说明了一个问题。当你更熟悉的语言,当一方,你缺少的是其他的知识,
- 首先是我的数学知识,在分析用户行为时,我们知道浏览次数和购买次数是由一定规律的,这个方面找了数学系的同学问了一些,得到的结论是:你能够进行线性拟合。这是最简单的,可是得到的结果不一定真实,于是推荐我使用高斯分布来做。可是由于自己单枪匹马,所以选了比較简单的线性拟合
- 心理学,我们能够从数据中发现。那些常常在淘宝买东西的假设是时间间隔一段就买了同一种商品的,那说明这个人的属于死宅之类的,由于这些东西一般我们旁边就有,还有,就是浏览次数和购买之间的关系,用数学来解答,心理学来分析。多天浏览和购买的关系,
import time u_id=[]
b_id=[]
t_id=[]
b_time=[]
t_num0=0
t_num1=0
t_num2=0
t_num3=0
a=True
i=0
j=0
fileread=open('t_alibaba_data.csv','r')
while True:
fileline=fileread.readline()
# print type(fileline)
# print fileline,
# print i
filedian =fileline.find(r',')
filedian1=fileline.rfind(r',') b_id1=fileline[filedian+1:filedian1-2]
b_id.append(b_id1) u_id1=fileline[:filedian]
u_id.append(u_id1) t_id1=fileline[filedian1-1:filedian1]
t_id.append(t_id1) b_time1=fileline[filedian1:-2]
b_time.append(b_time1) if not fileline:
break
output=open('taobao.txt','a')
#print u_id
#print b_id
#print t_id
print b_time ff=0
while True:
if u_id[i]==u_id[i+1]: if ff==0: output.write(u_id[i])
output.write(' ')
ff=ff+1
if b_id[i]==b_id[i+1]: if int(t_id[i])==0:
t_num0=t_num0+1
elif int(t_id[i])==1:
t_num1=t_num1+1
elif int(t_id[i])==2:
t_num2=t_num2+1
else:
t_num3=t_num3+1
else:
j=j+1
print u_id[i],b_id[i],t_num0,t_num1,t_num2,t_num3
if t_num0>=15 or t_num1>=1 :
output.write(b_id[i])
output.write(",")
# else:
# output.write(b_id[i])
# output.write(',')
t_num0=0
t_num1=0
t_num2=0
t_num3=0 # else:
else:
output.write('\n')
ff=0
# print u_id[i],b_id[i],t_num0,t_num1,t_num2,t_num3
i=i+1
#coding:utf-8
import time u_id=[]
b_id=[]
t_id=[]
b_time=[]
t_num0=0
t_num1=0
t_num2=0
t_num3=0
b_num1=0
b_time4=0
a=True
i=0
j=0
fileread=open('t_alibaba_data.csv','r')
while True:
fileline=fileread.readline()
# print type(fileline)
# print fileline,
# print i
filedian =fileline.find(r',')
filedian1=fileline.rfind(r',') b_id1=fileline[filedian+1:filedian1-2]
b_id.append(b_id1) u_id1=fileline[:filedian]
u_id.append(u_id1) t_id1=fileline[filedian1-1:filedian1]
t_id.append(t_id1) b_time1=fileline[filedian1:-2]
b_time.append(b_time1) if not fileline:
break
output=open('taobao.txt','a')
#print u_id
#print b_id
#print t_id
#print b_time ff=0
while True:
if u_id[i]==u_id[i+1]: if ff==0: output.write(u_id[i])
output.write(' ')
ff=ff+1
if b_id[i]==b_id[i+1]: if int(t_id[i])==0:
t_num0=t_num0+1
elif int(t_id[i])==1:
t_num1=t_num1+1
elif int(t_id[i])==2:
t_num2=t_num2+1
elif b_time[i]!=b_time[i+1]:
b_time4=b_time4+1
else:
t_num3=t_num3+1
else:
j=j+1
b_num1=b_num1+1
print u_id[i],b_id[i],t_num0,t_num1,t_num2,t_num3,b_time4
if t_num0>=15 and t_num1==0:
output.write(b_id[i])
output.write(",")
if b_time4>=2 and t_num1==0:
output.write(b_id[i])
output.write(',')
if t_num0>15 and t_num1>=2:
output.write(b_id[i])
output.write(',')
if t_num2>=1 and t_num1==0:
output.write(b_id[i])
output.write(',')
if len(b_id)<=3:
output.write(b_id[i])
output.write(',') # if b_num1<=3:
# output.write(b_id[i])
# output.write(',')
#
#
t_num0=0
t_num1=0
t_num2=0
t_num3=0
b_time4=0 # else:
else:
output.write('\n')
b_num1=b_num1+1
# print u_id[i],b_id[i],t_num0,t_num1,t_num2,t_num3
i=i+1
b_num1=0
#coding:utf-8
import time
import numpy as np
from scipy import optimize
from math import sqrt u_id=[]
b_id=[]
t_id=[]
b_time=[]
t_num0=0 #类型
t_num1=0
t_num2=0
t_num3=0
b_num1=0 #品牌个数
b_time4=0 #时间
a=True
i=0
j=0
fileread=open('t_alibaba_data.csv','r')
while True:
fileline=fileread.readline()
# print type(fileline)
# print fileline,
# print i
filedian =fileline.find(r',')
filedian1=fileline.rfind(r',') b_id1=fileline[filedian+1:filedian1-2]
b_id.append(b_id1) u_id1=fileline[:filedian]
u_id.append(u_id1) t_id1=fileline[filedian1-1:filedian1]
t_id.append(t_id1) b_time1=fileline[filedian1:-2]
b_time.append(b_time1) if not fileline:
break
output=open('taobao.txt','a')
#print u_id
#print b_id
#print t_id
#print b_time
t_num00=[]
t_num11=[]
t_num22=[]
t_num33=[]
t_time44=[]
cc=0
ff=0
pp=0
while True:
if u_id[i]==u_id[i+1]: if ff==0: output.write(u_id[i])
output.write(' ')
ff=ff+1
if b_id[i]==b_id[i+1]:
# cc=cc+1
if int(t_id[i])==0:
t_num0=t_num0+1
elif int(t_id[i])==1:
t_num1=t_num1+1
elif int(t_id[i])==2:
t_num2=t_num2+1
else:
t_num3=t_num3+1
if b_time[i]!=b_time[i+1]:
# print b_time4
b_time4=b_time4+1
else:
j=j+1
# b_num1=b_num1+1
# print u_id[i],b_id[i],t_num0,t_num1,t_num2,t_num3,b_time4
# if b_time4>=3:
# print b_time4
# pp=pp+1
# 数据拟合分析部分 t_num00.append(t_num0)
t_num11.append(t_num1)
t_num22.append(t_num2)
t_num33.append(t_num3)
t_time44.append(b_time4) # if t_num0>=10 :
# output.write(b_id[i]) #看了15次的没有买的
# output.write(",")
# elif b_time4>=3 :
# output.write(b_id[i]) #多天看的,没有买
# output.write(',')
# # if t_num0>15 and t_num1>=2:
# # output.write(b_id[i])
# # output.write(',')
# elif t_num2>=1 :
# output.write(b_id[i]) #收藏出可是没有买
# output.write(',')
# elif t_num3>=1 : #放进购物车可是没有买
# output.write(b_id[i])
# output.write(',')
# # if b_time4>=2 and t_num1>=2:
# # output.write(b_id[i])
# # output.write(',')
# #
# elif t_num1>=1:
# output.write(b_id[i]) #买过两次
# output.write(',')
# # if len(b_id)<=3:
# output.write(b_id[i])
# output.write(',') # if b_num1<=3:
# output.write(b_id[i])
# output.write(',')
#
#
t_num0=0
t_num1=0
t_num2=0
t_num3=0
b_time4=0
# elif b_num1<=3 and ff!=0:
# print b_id[i]
# output.write(b_id[i])
# output.write('\n')
# ff=0
## else:
elif not u_id[i+1]:
break
# else:
#
# output.write('\n')
# ff=0
# print u_id[i],b_id[i],t_num0,t_num1,t_num2,t_num3
i=i+1
b_num1=0 #分析浏览次数和购买的关系
y=np.array(t_num00)
x=np.array(t_num11) def residuals(p):
k,b=p
return y-(k*x-b) r=optimize.leastsq(residuals,[1,0])
k,b=r[0]
print "K=",k,"b=",b #分析收藏和购买的关系
x22=np.array(t_num22) def residuals(p):
k,b=p
return y-(k*x22-b) r=optimize.leastsq(residuals,[1,0])
k22,b22=r[0]
print "Kt_num22=",k22,"b22=",b22 #分析购物车和购买的关系
x33=np.array(t_num33) def residuals(p):
k,b=p
return y-(k*x33-b) r=optimize.leastsq(residuals,[1,0])
k33,b33=r[0]
print "kt_num33=",k33,"b33=",b33
#查看天数和购物关系
x44=np.array(t_time44) def residuals(p):
k,b=p
return y-(k*x44-b) r=optimize.leastsq(residuals,[1,0])
k44,b44=r[0]
print "ktime=",k44,"b44=",b44 print pp
#def sim_pearson()
python购物淫秽数据分析(2)的更多相关文章
- Python金融大数据分析PDF
Python金融大数据分析(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1CF2NhbgpMroLhW2sTm7IJQ 提取码:clmt 复制这段内容后打开百度网盘 ...
- Python爬虫与数据分析之爬虫技能:urlib库、xpath选择器、正则表达式
专栏目录: Python爬虫与数据分析之python教学视频.python源码分享,python Python爬虫与数据分析之基础教程:Python的语法.字典.元组.列表 Python爬虫与数据分析 ...
- Python爬虫与数据分析之模块:内置模块、开源模块、自定义模块
专栏目录: Python爬虫与数据分析之python教学视频.python源码分享,python Python爬虫与数据分析之基础教程:Python的语法.字典.元组.列表 Python爬虫与数据分析 ...
- Python爬虫与数据分析之进阶教程:文件操作、lambda表达式、递归、yield生成器
专栏目录: Python爬虫与数据分析之python教学视频.python源码分享,python Python爬虫与数据分析之基础教程:Python的语法.字典.元组.列表 Python爬虫与数据分析 ...
- Python运用于数据分析的简单教程
Python运用于数据分析的简单教程 这篇文章主要介绍了Python运用于数据分析的简单教程,主要介绍了如何运用Python来进行数据导入.变化.统计和假设检验等基本的数据分析,需要的朋友可以参考下 ...
- python中pandas数据分析基础3(数据索引、数据分组与分组运算、数据离散化、数据合并)
//2019.07.19/20 python中pandas数据分析基础(数据重塑与轴向转化.数据分组与分组运算.离散化处理.多数据文件合并操作) 3.1 数据重塑与轴向转换1.层次化索引使得一个轴上拥 ...
- 《Python金融大数据分析》高清PDF版|百度网盘免费下载|Python数据分析
<Python金融大数据分析>高清PDF版|百度网盘免费下载|Python数据分析 提取码:mfku 内容简介 唯一一本详细讲解使用Python分析处理金融大数据的专业图书:金融应用开发领 ...
- python金融大数据分析PDF高清完整版免费下载|百度云盘|Python基础教程免费电子书
点击获取提取码:7k4b 内容简介 唯一一本详细讲解使用Python分析处理金融大数据的专业图书:金融应用开发领域从业人员必读. Python凭借其简单.易读.可扩展性以及拥有巨大而活跃的科学计算社区 ...
- 【转帖】Python在大数据分析及机器学习中的兵器谱
Flask:Python系的轻量级Web框架. 1. 网页爬虫工具集 Scrapy 推荐大牛pluskid早年的一篇文章:<Scrapy 轻松定制网络爬虫> Beautiful Soup ...
随机推荐
- DFT 展开式和 FFT推导
C语言的FFT //---------------------------------------------------------------------------------- //----- ...
- 把自解压的RAR压缩包解压到指定的软件安装目录
原文 把自解压的RAR压缩包解压到指定的软件安装目录 今天千里独行同学给轻狂来信问了一个问题:如何把一个自解压的RAR压缩包解压到我们指定的软件安装目录. 其实,在NSIS中,我们可以灵活运用相关 ...
- CSS3实现Tooltip提示框飞入飞出动画
原文:CSS3实现Tooltip提示框飞入飞出动画 我们见过很多利用背景图片制作的Tooltip提示框,但是缺点是扩展比较麻烦,要经常改动图片.还有就是利用多层CSS的叠加实现,但是效果比较生硬,外观 ...
- 从源码看Android中sqlite是怎么读DB的(转)
执行query 执行SQLiteDatabase类中query系列函数时,只会构造查询信息,不会执行查询. (query的源码追踪路径) 执行move(里面的fillwindow是真正打开文件句柄并分 ...
- 易Android登录Demo
上一页介绍Android项目简单的页面跳转实例,算是对开发环境的熟悉,这一篇将在此基础上增加一些简单的逻辑,实现登录的效果. 登录之前: 登录成功: watermark/2/text/aHR0cDov ...
- C语言优化实例:为了消除嵌套switch-case聪明的做法
我们有可能会写出或者遇到类似这种代码: C/C++ switch (expr1) { case label11: switch (expr2) { case label21: // do someth ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(20)-多条件模糊查询和回收站还原的实现
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(20)-多条件模糊查询和回收站还原的实现 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架 ...
- 【百度地图API】自行获取区域经纬度的工具
原文:[百度地图API]自行获取区域经纬度的工具 摘要:上一章教大家如何建立自己的行政区域地图.这次为大家提供一个,可视化选择区域,并且能自动生成经纬度代码的工具.工具的源代码完全公开,并且做了详尽的 ...
- [VirtualBox] - Install Oracle Linux 7 on Oracle VirtualBox
I'll start coding with JEE soon. Product environment adopts Oracle + WebLogic in Linux, technology a ...
- MVC日期格式化的2种方式
原文:MVC日期格式化的2种方式 假设有这样的一个类,包含DateTime类型属性,在编辑的时候,如何使JoinTime显示成我们期望的格式呢? using System; using System. ...