数据工程师面试题集及答题策略.docxVIP

  • 3
  • 0
  • 约1.14万字
  • 约 31页
  • 2026-02-15 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年数据工程师面试题集及答题策略

一、编程与算法题(共5题,每题10分)

1.数据清洗与预处理(10分)

题目:

给定一个包含缺失值、异常值和重复记录的CSV文件,请用Python编写代码实现以下功能:

(1)删除重复记录;

(2)填充缺失值(数值型字段用均值填充,类别型字段用众数填充);

(3)检测并处理异常值(使用IQR方法);

(4)输出清洗后的DataFrame。

参考答案:

python

importpandasaspd

defclean_data(file_path):

df=pd.read_csv(file_path)

删除重复记录

df.drop_duplicates(inplace=True)

分离数值型和类别型字段

num_cols=df.select_dtypes(include=[float64,int64]).columns

cat_cols=df.select_dtypes(include=[object,category]).columns

填充缺失值

forcolinnum_cols:

df[col].fillna(df[col].mean(),inplace=True)

forcolincat_cols:

df[col].fillna(df[col].mode()[0],inplace=True)

检测异常值

forcolinnum_cols:

Q1=df[col].quantile(0.25)

Q3=df[col].quantile(0.75)

IQR=Q3-Q1

lower_bound=Q1-1.5IQR

upper_bound=Q3+1.5IQR

df=df[(df[col]=lower_bound)(df[col]=upper_bound)]

returndf

解析:

-删除重复记录使用`drop_duplicates()`;

-缺失值处理需区分数值型和类别型字段;

-异常值检测基于IQR方法,适用于金融或电商领域数据清洗场景。

2.分布式计算(10分)

题目:

假设使用Spark处理100GB的订单数据,每条记录包含用户ID、订单金额和下单时间。请写出:

(1)计算每个用户的总订单金额;

(2)筛选出订单金额超过1万元的用户,并按金额降序排列的SparkSQL语句或DataFrameAPI代码。

参考答案:

python

frompyspark.sqlimportSparkSession

frompyspark.sql.functionsimportsumas_sum,col

初始化Spark

spark=SparkSession.builder.appName(OrderAnalysis).getOrCreate()

读取数据

df=spark.read.csv(orders.csv,inferSchema=True,header=True)

计算每个用户的总订单金额

total_orders=df.groupBy(user_id).agg(_sum(order_amount).alias(total_amount))

筛选和排序

rich_customers=total_orders.filter(col(total_amount)10000).orderBy(col(total_amount).desc())

查看结果

rich_customers.show()

解析:

-Spark适合处理大规模数据,需注意内存优化;

-DataFrameAPI比SQL更灵活,适用于复杂计算。

3.数据去重与关联(10分)

题目:

有两张表:

-`orders`:订单表(order_id,user_id,amount);

-`users`:用户表(user_id,name,region)。

请用SQL或Spark代码实现:

(1)将两张表关联,获取订单金额大于5000的用户姓名和所在地区;

(2)去除结果中的重复姓名。

参考答案:

sql

--SQL方案

SELECTDISTINCTu.name,u.region

FROMorderso

JOINusersuONo.user_id=u.user_id

WHEREo.amount5000;

python

Spark方案

df_orders=spark.read.table(orders)

df_users=spark.read.table(users)

result=df_o

文档评论(0)

1亿VIP精品文档

相关文档