面试题答案
一键面试import pandas as pd
def process_csv(file_path):
df = pd.read_csv(file_path)
# 1. 将日期列规整为标准日期格式
for col in df.columns:
try:
df[col] = pd.to_datetime(df[col], errors='coerce')
except:
pass
# 2. 去除重复行
df = df.drop_duplicates()
# 3. 统一列的数据类型
for col in df.columns:
if df[col].dtype == 'object':
try:
df[col] = pd.to_numeric(df[col], errors='coerce')
except:
pass
return df
你可以使用以下方式调用函数:
file_path = 'your_file.csv'
result = process_csv(file_path)
print(result)
process_csv
函数接收一个CSV文件路径作为参数。- 使用
pd.read_csv
读取CSV文件。 - 遍历列,使用
pd.to_datetime
将日期列转换为标准日期格式,errors='coerce'
表示将无效日期转换为NaT
。 - 使用
drop_duplicates
方法去除重复行。 - 再次遍历列,对于
object
类型列,尝试使用pd.to_numeric
将其转换为数值类型,errors='coerce'
表示将无效值转换为NaN
。
最后通过传入实际的文件路径调用函数并打印结果。请根据实际情况调整文件路径。