- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第PAGE页共NUMPAGES页
2026年数据面试题及团队协作能力考察含答案
一、编程题(共5题,每题20分,总分100分)
1.数据处理与算法(20分)
题目:
假设你正在开发一个电商平台的用户行为分析系统,需要处理以下数据:用户ID、购买商品类别、购买次数、购买时间(UNIX时间戳)。请用Python编写函数,统计每个用户的“购买频率”(单位:次/天),并按购买频率从高到低排序,返回前10名用户及其购买频率。数据格式如下:
python
data=[
[user1,electronics,3,1640995200],
[user2,clothing,5,1640995200],
[user1,home,2,1641081600],
[user3,electronics,1,1640995200],
[user2,electronics,2,1641177600],
[user1,clothing,1,1641177600],
[user3,home,3,1641264000],
[user2,home,1,1641264000],
[user1,electronics,4,1641350400],
[user3,clothing,2,1641350400],
]
要求:
-使用Python实现,无需安装额外包。
-时间复杂度尽量优化。
答案:
python
fromcollectionsimportdefaultdict
fromdatetimeimportdatetime,timedelta
deftop_buyers(data):
user_freq=defaultdict(lambda:{count:0,dates:set()})
forrecordindata:
user,category,count,timestamp=record
date=datetime.utcfromtimestamp(timestamp).date()
user_freq[user][count]+=count
user_freq[user][dates].add(date)
foruserinuser_freq:
days=len(user_freq[user][dates])
user_freq[user][freq]=user_freq[user][count]/days
sorted_users=sorted(user_freq.items(),key=lambdax:x[1][freq],reverse=True)
returnsorted_users[:10]
测试
data=[
[user1,electronics,3,1640995200],
[user2,clothing,5,1640995200],
[user1,home,2,1641081600],
[user3,electronics,1,1640995200],
[user2,electronics,2,1641177600],
[user1,clothing,1,1641177600],
[user3,home,3,1641264000],
[user2,home,1,1641264000],
[user1,electronics,4,1641350400],
[user3,clothing,2,1641350400],
]
print(top_buyers(data))
解析:
1.使用`defaultdict`记录每个用户的购买次数和日期集合。
2.遍历数据,按用户分组,统计购买次数和日期。
3.计算每个用户的购买频率(次/天),并按频率降序排序。
4.返回前10名用户。
2.SQL查询(20分)
题目:
假设你有一个电商数据库,包含以下表:
-`orders`(订单表:`order_id`(主键),`user_id`,`order_date`,`total_amount`)
-`order_items`(订单项表:`order_id`(外键),`product_id`,`quantity`,`price`)
-`products`(商品表:`product_id`(主键),`category`,`price`)
-`users`(用户表:`user_id`(主键),`region`,`join_date`)
请编写SQL查询,统计每个地区的用户平均订单金额(`total_amount`),并按平均金额从高
您可能关注的文档
最近下载
- 2024-2025学年北京东城区高一(上)期末数学试卷(含答案解析).pdf
- 《春秋》导读(复旦大学).doc VIP
- 口腔辐射安全规章制度.docx VIP
- 数据运营全流程手册.pdf
- 沙钢5800m3高炉煤粉制备尾气自循环工艺设计.pdf VIP
- 冠心病防治科普知识.pptx VIP
- 测绘地理信息标准目录.pdf
- DBJ51T 040-2021 四川省工程建设项目招标代理操作规程 .pdf VIP
- 第7课《党是最高政治领导力量》第1框《不忘初心、牢记使命》课件 中职高教版中国特色社会主义.pptx VIP
- 中 山 大 学 软 件 学 院 软 件 工 程 专 业 2 0 0 8 级 (2010 秋季学期)《 S E - 3 0 4 数据库系统原理》 期 末 试 题 (A 卷).docx VIP
原创力文档


文档评论(0)