现如今,智能手机是人手一份。每天我们都通过手机与外界沟通交流,手机作为必不可少的媒介,无形中记录着我们日常生活中的点点滴滴。这些信息主要包括个人位置信息、通信信息、账号密码信息、存储文件信息等四大类。由于Android是开源的,软件用户可自行对软件进行修改、复制及再分发,直接进行信息交换。有些用户还会自己对系统进行破解,获取权限,窃取个人信息。一些山寨手机甚至还留有后门程序,固化窃听软件,并通过远程遥控使手机话筒在用户不知情的情况下开启,把手机变成一个窃听-器,造成个人隐私泄露。

因此,通过对手机数据的挖掘与分析,可以便捷地进行用户行为分析;比如,利用手机定位数据可以进行用户特征挖掘;利用通话记录可以进行社交亲密度分析等等。我带着这个想法,导出自己手机上可以找到的各种数据文件,并通过R软件十对这些数据进行了简单的统计分析,现将步骤记录如下:

通话记录分析

首先,读取xml格式通话记录并解析,将其转换成数据框格式;然后便可以通过DT包快速便捷地查看通话记录。

library(XML)xmlfile=xmlParse(file.choose(),encoding="UTF-8") #读取xml格式通话记录并解析
mydata=xmlToDataFrame(xmlfile) #转换格式head(mydata)
mydata$Duration=as.numeric(mydata$Duration) 

查看列表

library(DT)
datatable(mydata, options = list(pageLength = 10))

按人统计通话记录

calldata=data.frame(Totaltime=with (mydata , tapply (Duration , list (ContactName) , sum ) ),Average=with (mydata ,tapply (Duration , list (ContactName) , mean ) ))
head(calldata)library(plotly)
plot_ly(calldata,x=rownames(Totaltime),y=Totaltime,type = "bar",name = "sum")
add_trace(calldata,x=rownames(Average),y=Average,name = "mean")

查询

plot_ly(mydata[mydata$ContactName=="张三",],x=StartTime,y=Duration,type = "bar")
plot_ly(mydata[mydata$ContactName=="张三",],x=StartTime,y=Duration)

按日统计通话记录

library(dygraphs)
library(xts)mydata$StartTime=as.Date(mydata$StartTime) #去除分秒
daydata=with (mydata, tapply (Duration , list (StartTime) , sum ) ) #每日通话时长dygraph(daydata, main = "每日通话时长走势") %>% dyRangeSelector(dateWindow = c("2016-05-01", "2016-06-01"))### 转化成时间序列画图
xtsdata=xts(daydata,as.Date(names(daydata)))
index(xtsdata)
dygraph(xtsdata, main = "每日通话时长走势") %>% dyRangeSelector(dateWindow = c("2016-05-01", "2016-06-01"))

这篇文章只记录了对通话记录的简单统计和可视化,手机数据真正的宝矿是其内置的各种传感器,随着物联网时代的到来,如何通过优秀的算法挖掘分析这些信号数据,具有十分重要的意义。

反馈与建议

  • 作者:ShangFR
  • 邮箱:shangfr@foxmail.com

转载于:https://www.cnblogs.com/shangfr/p/5564949.html

手机通话记录统计分析相关推荐

  1. android系统通话记录,安卓手机通话记录怎么恢复?快速恢复

    原标题:安卓手机通话记录怎么恢复?快速恢复 安卓手机通话记录怎么恢复?我们的手机上只要打过电话,一定就会有手机通话记录,那么问题就出现了,若是我们不小心将我们我们的手机通话记录给删除了,我们又比较需要 ...

  2. 在计算机上知道手机密码,不知道密码查手机通话记录:傻瓜式教程

    不知道密码查手机通话记录:傻瓜式教程 搜狐媒体平台 05-14 09:12 大 有时我们不慎忘记了自己手机的服务密码,在这种情况下,是否还可以查询自己手机的通话记录呢?答案是可以的,今天我要介绍的方法 ...

  3. 删除的android电话怎么找回,通话记录删除了怎么恢复?安卓手机通话记录恢复方法...

    通话记录删除了怎么恢复?安卓手机通话记录恢复方法 2018年11月08日 17:35作者:黄页编辑:黄页 分享 我们和他人通话结束后,手机上会出现通话记录,但是要是不小心把这些通话记录删除了该怎么办? ...

  4. 通话记录查询Java_Android获取手机通话记录的方法

    Android如何获取手机通话记录,本文为大家揭晓. 获取手机通话记录流程: 1. 获取ContentResolver; ContentResolver resolver = getContentRe ...

  5. 如何恢复手机通话记录?教你快速恢复

    如何恢复手机通话记录?教你快速恢复.我们现在很多的时候会因为我们自己的一些私人原因对于我们的通话记录,我们每个人的态度也都是不同的,因此,我们有的时候会比较重视我们的通话记录. 那么若是我们不小心删除 ...

  6. html5通话记录,中国移动手机通话记录怎么查 苹果手机的通话记录怎么查

    苹果手机的通话记录怎么查 中国移动手机通话记录怎么查 Rog游戏手机3可以解锁160hz刷新率模式 上周,Rog游戏手机3正式发布,凭借snapdragon 865 plus手机平台.6000mAh电 ...

  7. Android获取手机通话记录的方法

    获取手机通话记录流程: 1. 获取ContentResolver; ContentResolver resolver = getContentResolver(); 2.resolver.query( ...

  8. 安卓手机通话记录路径_一点换机小技巧,轻松迁移旧手机资料到新手机

    手机资料转移是更换新手机时常用的一种技巧,经常用来将旧手机上的资料.应用等全部迁移至新手机上.它实质上是通过利用WIFI热点技术,全程无需电脑,实现简单.安全.不遗漏地把用户旧手机上的本地文档资料.短 ...

  9. android通话记录手机号码归属地,mui 获取手机通话记录

    export default { onLoad() { this.log(); // this.msg(); // this.concat(); }, methods: { log() { // 获取 ...

  10. 手机通话记录重复显示怎么处理_当手机出现陌生号码,且有通话记录后,我恐慌了...

    如果不是无意中点开通话记录,我不会发现这一个现象,到最后也没有人帮我解开.在发现了手机里存在陌生号码,且有聊天时长后,我担心自己的信息被泄露了.在前几天,手机突然弹出一个消息,关联一个电话号码.我一看 ...

最新文章

  1. 被放弃的概率权,机器下围棋不理会沉没成本
  2. python读取大文件太慢_python读取大文件越来越慢的原因与解决
  3. Python 中的 import 与 from import 区别
  4. woocommerce分类页面模板_怎样让wordpress网站的不同分类页面,调用不同的banner图片?...
  5. [推荐]经典炸弹人手机游戏[年兽防御战2]
  6. .NET Core中使用Razor模板引擎
  7. 适合程序员的耳机_为什么很多程序员工作时都戴耳机?
  8. Java知多少(66)输入输出(IO)和流的概述
  9. Linux两种方式rd.break和init重置root管理员密码
  10. sm2算法c 语言实现,移远通信集成国密安全解决方案的C-V2X AP模组商用落地
  11. 前端快来!最火的 Vue.js 开源项目出炉
  12. (转)Google Fonts 的介绍与使用
  13. 愿世间所有美好都恰逢其时
  14. MTK Android11内置Google拼音输入法
  15. python 源代码 macd双底 高 低_通达信双底选股公式-MACD底背离通达信选股公式
  16. paperwhite3翻页_Kindle vs. Paperwhite vs. Voyage vs. Oasis:您应该购买哪种Kindle?
  17. 终端模拟器编译c语言,开源一个Flutter编写的完整终端模拟器
  18. 出现这十种症状,说明你不适合做程序员
  19. 华为计算机网络认证软件,华为认证入门计算机网络基础
  20. 如何选择北京市医疗定点机构---初级班

热门文章

  1. 2021-08-21 初识javabean
  2. python编写量化交易程序英语_Python量化交易开源框架:AmazingQuant
  3. python列表操作符_Python中list()列表操作符的案例分享
  4. zipfian 参数是什么 Zipfian distribution 齐夫定律
  5. latex acm-sigconf使用总结
  6. linux shell 字典 定义 新增元素
  7. Kubernetes 小白学习笔记(6)--kubernetes的架构与组件-Master组件
  8. 日期范围选择类日历(增强版)
  9. 基于Java的学生信息管理系统
  10. 2.3.PHP7.1 狐教程-【PHP变量的作用域】