当前位置: 首页 > news >正文

如何做网站不被坑网站建设推荐公司

如何做网站不被坑,网站建设推荐公司,网站建设多长时间,wordpress竖屏✅ 今日目标 理解 Pandas 中数据合并的 4 种常用方式:concat、merge、join、combine掌握内连接、外连接、左连接、右连接等操作方式掌握按列对齐、按索引对齐的区别为后续数据整合、特征拼接等建模任务做准备 📚 一、concat 合并(按行/列拼接…

✅ 今日目标

  • 理解 Pandas 中数据合并的 4 种常用方式:concatmergejoincombine
  • 掌握内连接、外连接、左连接、右连接等操作方式
  • 掌握按列对齐、按索引对齐的区别
  • 为后续数据整合、特征拼接等建模任务做准备

📚 一、concat 合并(按行/列拼接)

df1 = pd.DataFrame({"姓名": ["张三", "李四"], "成绩": [85, 90]})
df2 = pd.DataFrame({"姓名": ["王五", "赵六"], "成绩": [70, 78]})# 纵向合并(行堆叠)
df_concat_row = pd.concat([df1, df2], ignore_index=True)# 横向合并(列拼接)
df_concat_col = pd.concat([df1, df2], axis=1)

📚 二、merge 合并(按列匹配)

df_left = pd.DataFrame({"学号": [1, 2, 3],"姓名": ["张三", "李四", "王五"]
})
df_right = pd.DataFrame({"学号": [2, 3, 4],"成绩": [90, 80, 60]
})# 默认 inner join(交集)
df_inner = pd.merge(df_left, df_right, on="学号")# 左连接:保留左表所有数据
df_left_join = pd.merge(df_left, df_right, on="学号", how="left")# 外连接:并集合并,空值补 NaN
df_outer = pd.merge(df_left, df_right, on="学号", how="outer")

📚 三、join(按索引连接)

df1 = pd.DataFrame({"成绩": [85, 90]}, index=["张三", "李四"])
df2 = pd.DataFrame({"班级": ["A", "B"]}, index=["张三", "王五"])# 使用 join 合并(按 index 对齐)
df_joined = df1.join(df2, how="outer")

📚 四、combine_first(数据补全)

df1 = pd.DataFrame({"姓名": ["张三", "李四", "王五"],"成绩": [85, None, 90]
})
df2 = pd.DataFrame({"姓名": ["张三", "李四", "王五"],"成绩": [None, 88, None]
})# 用 df2 中的非空数据补全 df1
df1.set_index("姓名", inplace=True)
df2.set_index("姓名", inplace=True)
df_combined = df1.combine_first(df2)

🧪 今日练习建议

  1. 准备两个表(如学生信息表 + 成绩表),练习 merge 的不同 join 模式

  2. 构造相同索引的两个表,练习 join 的用法(按索引合并)

  3. 使用 concat 实现表格的上下或左右拼接

  4. 使用 combine_first 补全缺失值(融合多个数据源)

    import pandas as pdprint("✅ 初始化数据...")# 模拟 学生信息表
    df_students = pd.DataFrame({"学号": [1001, 1002, 1003, 1004],"姓名": ["张三", "李四", "王五", "赵六"],"性别": ["男", "女", "男", "女"]
    })# 模拟 成绩表(部分学生)
    df_scores = pd.DataFrame({"学号": [1002, 1003, 1005],"成绩": [88, 75, 92]
    })# 模拟 班级信息(姓名为索引)
    df_classes = pd.DataFrame({"班级": ["A班", "B班", "C班"]
    }, index=["张三", "李四", "王五"])# 模拟 第三方成绩补充表
    df_scores_backup = pd.DataFrame({"学号": [1001, 1002, 1003],"成绩": [85, None, 78]
    })# ========= 一、merge 合并演示 =========print("\n🔗 merge(inner join,默认):")
    df_inner = pd.merge(df_students, df_scores, on="学号", how="inner")
    print(df_inner)print("\n🔗 merge(left join):")
    df_left = pd.merge(df_students, df_scores, on="学号", how="left")
    print(df_left)print("\n🔗 merge(outer join):")
    df_outer = pd.merge(df_students, df_scores, on="学号", how="outer")
    print(df_outer)# ========= 二、concat 行列拼接 =========print("\n📚 concat 行拼接:")
    df_part1 = df_students.iloc[:2]
    df_part2 = df_students.iloc[2:]
    df_concat = pd.concat([df_part1, df_part2], ignore_index=True)
    print(df_concat)print("\n📚 concat 列拼接:")
    df_concat_col = pd.concat([df_part1.reset_index(drop=True), df_scores.head(2).reset_index(drop=True)], axis=1)
    print(df_concat_col)# ========= 三、join 按索引合并 =========print("\n🔗 join(按姓名索引):")
    df_named = df_students.set_index("姓名")
    df_joined = df_named.join(df_classes, how="left")
    print(df_joined)# ========= 四、combine_first 用于数据补全 =========print("\n🧩 combine_first(成绩补全):")
    df_score_main = df_scores.set_index("学号")
    df_score_backup = df_scores_backup.set_index("学号")
    df_combined = df_score_main.combine_first(df_score_backup)
    print(df_combined)# (可选)保存结果
    df_left.to_csv("data/merged_left.csv", index=False)
    df_combined.to_csv("data/combined_scores.csv")print("\n✅ 合并与连接示例完成,结果已输出并保存。")
    

    运行输出:

    ✅ 初始化数据...🔗 merge(inner join,默认):学号  姓名 性别  成绩
    0  1002  李四  女  88
    1  1003  王五  男  75🔗 merge(left join):学号  姓名 性别    成绩
    0  1001  张三  男   NaN
    1  1002  李四  女  88.0
    2  1003  王五  男  75.0
    3  1004  赵六  女   NaN🔗 merge(outer join):学号   姓名   性别    成绩
    0  1001   张三    男   NaN
    1  1002   李四    女  88.0
    2  1003   王五    男  75.0
    3  1004   赵六    女   NaN
    4  1005  NaN  NaN  92.0📚 concat 行拼接:学号  姓名 性别
    0  1001  张三  男
    1  1002  李四  女
    2  1003  王五  男
    3  1004  赵六  女📚 concat 列拼接:学号  姓名 性别    学号  成绩
    0  1001  张三  男  1002  88
    1  1002  李四  女  1003  75🔗 join(按姓名索引):学号 性别   班级
    姓名              
    张三  1001  男   A班
    李四  1002  女   B班
    王五  1003  男   C班
    赵六  1004  女  NaN🧩 combine_first(成绩补全):成绩
    学号        
    1001  85.0
    1002  88.0
    1003  75.0
    1005  92.0✅ 合并与连接示例完成,结果已输出并保存。
    

🧾 今日总结

方法用途特点
concat()多表拼接行/列级拼接
merge()类似 SQL join支持主键连接
join()按索引合并简洁易用
combine_first()数据补全常用于多源合并

数据整合是建模准备中的关键一环,推荐熟练掌握 mergeconcat 的灵活使用。

http://www.dtcms.com/a/556222.html

相关文章:

  • 做考试平台的网站百度快速排名点击器
  • jsp网站自身安全性通过什么技术实现个人做小程序怎么挣钱
  • 网站制作是不是要一个后台女装网站建设
  • 网站在百度的图标显示不正常wordpress模板在哪个文件夹
  • 网站规划建设与管理维护答案建设局主要负责什么
  • 淮安市建设厅网站通化市住房和城乡建设局网站
  • 国外网站打开速度慢的原因怎么做网站的界面
  • 太阳能建设网站网站 框架网页建设
  • 外贸出口流程步骤常州抖音seo
  • 欣赏艺术类的网站义乌seo快速排名
  • 宁波建网站如何收费国内做seo最好的公司
  • 山西网站建设服务江苏省建设工程网
  • 怀化网站优化联系方式想创办一个本地的人才招聘网站_如何做市场调查问卷
  • 建网站的费用是多少钱西安做seo的公司
  • 官方网站制作做一个网站成本要多少钱
  • 网站建设深做外单网站有哪些
  • 电子商务网站案例分析wordpress导航菜单制作
  • 做橱窗设计的网站电脑上怎样运行wordpress
  • 网站设计 尺寸虎年ppt模板免费下载
  • 怎么做一个网站的步骤青海省住房和建设门户网站
  • 自己的网站什么做优化好友介绍网站怎么做
  • 影视网站建设策划文案网站内部链接有什么作用
  • 电子商务网站建设期末试题及答案小学生手工制作大全
  • 网站地图建设有什么用网站仿制可用于商业吗
  • 东莞三合一网站建设网站建设事项
  • 爱站网是怎么回事wordpress搭建多人博客
  • 做烘焙原材料在哪网站买设计属于什么行业
  • 免费上线个人网站dz网站标题
  • 淄博网站建设选择臻动传媒网络营销公司成功案例
  • 深圳市做网站设计鹤壁市建设局网站