Menu
CoddyTech

合并与拼接

Coddy Pandas 数据分析 课程的第 17 课,共 19 课。

在现实世界中,数据通常来自多个表或文件。要连接和分析这些数据,我们必须能够合并数据集。要合并数据框,可以使用 .merge()、.join() 和 .concat()。

.merge() 类似于 SQL 的 JOIN 操作,它根据一个或多个键连接数据框中的列或索引:

merged_df = df1.merge(df2, on='common_column')

例如,下面这两个表:

IDVALUE
1"val1"
2"val2"
IDPOINTS
19

将变为:

IDVALUEPOINTS
1"val1"9

.concat() 函数用于将一个数据框的行追加到另一个数据框的末尾,并返回一个新的数据框。此操作类似于 SQL 中的“UNION”操作:

concatenated_df = pd.concat([df1, df2])
challenge icon

挑战

简单

CSV 文件 visits.csv 包含有关特定时间在特定地点发生了多少次访问的信息。

以下是文件的前 5 行:

location_id,visits,timestamp
8,1771,27498
9,4187,79919
0,4959,54228
6,7721,41588

计算每个 location id 的 min、max、mean、std、sum 和 median,并将它们合并到一个 dataframe 中。将列名重命名为:

sum_visits、min_visits、max_visits、mean_visits、std_visits 和 median_visits。

最终的 dataframe 应如下所示:

location_idsum_visitsmin_visitsmax_visitsmean_visitsstd_visitsmedian_visits
.....................

将结果保存到 df 中。

亲手试试

# 已将 pandas 导入为 pd
df = pd.read_csv("./visits.csv")
sum_visits = df.groupby("location_id").sum()
min_visits = df.groupby("location_id").min()
max_visits = df.groupby("location_id").max()
mean_visits = df.groupby("location_id").mean()
std_visits = df.groupby("location_id").std()
median_visits = df.groupby("location_id").median()
# 在下方编写你的代码

Pandas 数据分析中的所有课

自己练习: Python 在线编译器