首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在pd.concat Pandas之后弄乱列

在使用pd.concat函数进行Pandas数据框拼接后,如果希望打乱列的顺序,可以使用DataFrame的reindex函数来实现。

reindex函数可以接受一个参数columns,用于指定新的列顺序。首先,我们需要获取拼接后的数据框的列名列表,然后使用numpy.random.permutation函数对列名列表进行随机排列,得到新的列名顺序。最后,将新的列名顺序传递给reindex函数即可。

以下是示例代码:

代码语言:txt
复制
import pandas as pd
import numpy as np

# 假设有两个数据框df1和df2需要拼接
df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
df2 = pd.DataFrame({'C': [7, 8, 9], 'D': [10, 11, 12]})

# 使用pd.concat函数进行拼接
df_concat = pd.concat([df1, df2], axis=1)

# 获取拼接后的数据框的列名列表
columns = df_concat.columns.tolist()

# 随机排列列名列表
new_columns = np.random.permutation(columns)

# 使用reindex函数按新的列名顺序重新排列列
df_shuffled = df_concat.reindex(columns=new_columns)

# 打印结果
print(df_shuffled)

这样就可以在pd.concat函数之后将列顺序打乱。需要注意的是,reindex函数会返回一个新的数据框,原数据框不会被修改。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Pandas基础:Pandas数据框架中移动

标签:pandas,Python 有时候,我们需要在pandas数据框架内移动一,shift()方法提供了一种方便的方法来实现。...pandas数据框架中向上/向下移动 要向下移动,将periods设置为正数。要向上移动,将其设置为负数。 注意,只有数据发生了移位,而索引保持不变。...目前,如果想使用freq参数,索引必须是datetime类型的数据,否则pandas将引发NotImplementedError。 向左或向右移动 可以使用axis参数来控制移动的方向。...默认情况下,axis=0,这意味着移动行(向上或向下);设置axis=1将使向左或向右移动。 在下面的示例中,将所有数据向右移动了1。因此,第一变为空,由np.nan自动填充。...Pandas.Series shift()方法 如前所述,Series类还有一个类似的shift()方法,其工作方式完全相同,只是它对一个系列(即单个)而不是整个数据框架进行操作。

3.2K20
  • 如何在 Pandas 中创建一个空的数据帧并向其附加行和

    Pandas是一个用于数据操作和分析的Python库。它建立 numpy 库之上,提供数据帧的有效实现。数据帧是一种二维数据结构。在数据帧中,数据以表格形式在行和中对齐。...大多数情况下,数据是从其他数据源(如csv,excel,SQL等)导入到pandas数据帧中的。本教程中,我们将学习如何创建一个空数据帧,以及如何在 Pandas 中向其追加行和。...Pandas.Series 方法可用于从列表创建系列。值也可以作为列表传递,而无需使用 Series 方法。 例 1 在此示例中,我们创建了一个空数据帧。...ignore_index参数设置为 True 以追加行后重置数据帧的索引。 然后,我们将 2 [“薪水”、“城市”] 附加到数据帧。“薪水”值作为系列传递。序列的索引设置为数据帧的索引。...import pandas as pd df = pd.DataFrame() df = pd.DataFrame(columns=['Name', 'Age']) df = pd.concat([df

    27430

    手把手教你用Python批量实现在Excel后里面新加一,并且内容为excel 表名(附源码)

    前言 前几天铂金交流群里,有个叫【 】的粉丝Python交流群里问了一道关于Python自动化办公的问题,初步一看觉得很简单,实际上确实是有难度的,题目如下图所示。...二、解决思路 如果是按照常规思路,首先打开一个Excel表格,之后表格的最后一添加对应表名,如果只是一个表格,表格内容只有一行的话,这么操作,三下五除二就完活了。...一、代码一 # coding: utf-8 # 给每个excel中的sheet增加一,值为excel名.xlsx from pathlib import Path import pandas as...二、代码二 # coding: utf-8 # 给每个excel中的sheet增加一,值为excel名-sheet名.xlsx from pathlib import Path import pandas...代码运行之后代码目录下会自动生成相应的Excel文件,如下图所示。 之后每个Excel表格中,也有对应的表格名称对应的列名,而且还实现了所有表格的合并功能,如下图所示。

    1.6K20

    教你如果用Python批量实现在Excel后里面新加一,并且内容为excel 表名(附源码)

    如果是按照常规思路,首先打开一个Excel表格,之后表格的最后一添加对应表名,如果只是一个表格,表格内容只有一行的话,这么操作,三下五除二就完活了。...一、代码一 # coding: utf-8 # 给每个excel中的sheet增加一,值为excel名.xlsx from pathlib import Path import pandas as pd...二、代码二 # coding: utf-8 # 给每个excel中的sheet增加一,值为excel名-sheet名.xlsx from pathlib import Path import pandas...代码运行之后代码目录下会自动生成相应的Excel文件,如下图所示。...af8ed5b893f8cf7826c75fc40855f30c.png   之后每个Excel表格中,也有对应的表格名称对应的列名,而且还实现了所有表格的合并功能,如下图所示。

    2.3K30

    pandas基础:如何截取pandas数据框架

    标签:pandas,Python 有时候,我们可能想要截取一个数据框架来删除多余的数据,这可以通过调用truncate()方法来实现。...before=2表示删除索引值2之前的行,即0和1 after=6表示删除索引值6之后的行,即7、8和9 截取pandas中带有时间序列数据的数据框架 由于truncate方法适用于索引,因此时间序列数据上使用它非常方便...在下面的示例中,删除2022-04-25之后的所有数据行。...截取数据框架 还可以通过设置参数axis=1来删除多余的: 已排序的索引是必需的 使用truncate()时有一个警告,必须首先对数据框架索引进行排序。...让我们尝试弄乱索引,然后再次应用truncate(),下面的代码将导致ValueError:truncate需要排序索引。

    96220

    【python数据分析】Pandas数据载入

    name:表示数据读进来之后的数据的列名 4.文本文件的存储 文本文件的存储和读取类似,结构化数据可以通过pandas中的to_csv函数实现以CSV文件格式存储文件。...二、合并数据 实际的数据分析中,对同一分析对象,可能有不同的数据来源,因此,需要对数据进行合并处理。...pandas中的concat方法可以实现,默认情况下会按行的方向堆叠数据。如果在向上连接设置axies = 1即可。...(datal ,data2,data) 在这里插入图片描述 可以看出,contact连接方式默认为outer外连接通过join参数, 可以指定连接方式:inner or outer直接contact之后...([s1*5,s3],sort=False) s5 = pd.concat([s1 ,s4],axis =1,sort=False) s6 = pd.concat([s1 ,s4],axis =1,join

    33720

    数据清洗、合并、转化和重构

    文章来源:Python数据分析 目录: DIKW模型与数据工程 科学计算工具Numpy 数据分析工具Pandas Pandas的函数应用、层级索引、统计计算 Pandas分组与聚合 数据清洗、合并、...转化和重构 数据清洗是数据分析关键的一步,直接影响之后的处理工作 数据需要修改吗?...默认将重叠的列名作为“外键”进行连接 示例代码: # 默认将重叠的列名作为“外键”进行连接 print(pd.merge(df_obj1, df_obj2)) 运行结果: data1 key...根据map传入的函数对每行或每进行转换 Series根据map传入的函数对每行或每进行转换 示例代码: ser_obj = pd.Series(np.random.randint(0,10,10...dataset_path, zip_filename) # zip文件路径 dataset_filename = get_dataset_filename(zip_filepath) # 数据集文件名(zip

    1.5K50

    数据科学 IPython 笔记本 7.9 组合数据集:连接和附加

    的简单连接 Pandas 拥有函数pd.concat(),它的语法与np.concatenate类似,但是包含了一些我们将要讨论的选项: # Pandas v0.18 中的签名 pd.concat(objs...重复的索引 np.concatenate和pd.concat之间的一个重要区别是,Pandas 的连接保留了索引,即使结果会有重复的索引!...使用join的连接 我们刚看到的简单示例中,我们主要使用共享列名来连接DataFrame。实际上,来自不同来源的数据可能具有不同的列名称集,而pd.concat在这种情况下提供了几个选项。...这里我们指定,返回的应该与第一个输入的相同: display('df5', 'df6', "pd.concat([df5, df6], join_axes=[df5.columns]...=[df5.columns]): A B C 1 A1 B1 C1 2 A2 B2 C2 3 NaN B3 C3 4 NaN B4 C4 连接两个数据集时,pd.concat函数的选项组合,允许各种可能的行为

    84320

    pandas dataframe 中的explode函数用法详解

    使用 pandas 进行数据分析的过程中,我们常常会遇到将一行数据展开成多行的需求,多么希望能有一个类似于 hive sql 中的 explode 函数。 这个函数如下: Code # !...list(values), })) dataframe = dataframe[list(set(dataframe.columns) - set([fieldname]))].merge(pd.concat...( 注:该可迭代, 例如list, tuple, set) 补充知识:Pandas中的字典/列表拆分为单独的 我就废话不多说了,大家还是直接看代码吧 [1] df Station ID Pollutants...7 3 NaN NaN 11 4 82 NaN 15 step 2: concat columns a, b, c and drop/remove the Pollutants df_final = pd.concat...0 8809 46 3 12 1 8810 36 5 8 2 8811 NaN 2 7 3 8812 NaN NaN 11 4 8813 82 NaN 15 Method 2: df_final = pd.concat

    3.9K30

    熟练掌握 Pandas 合并术,数据处理不再伤脑筋

    这是 pandas 快速上手系列的第 4 篇文章,本篇详细介绍了 concat 的使用和示例。...pandas中的 concat() 方法用于将两个或多个 DataFrame 对象沿着行 axis=0 或者 axis=1 的方向拼接在一起,生成一个新的DataFrame对象。...参数说明: objs: 是一个序列或 Series/DataFrame 的字典,即需要合并的数据对象 axis: 指定合并的轴向,axis=0 是纵向合并(增加行数), axis=1 是横向合并(增加数...实际工作中,我们可以根据具体需求选择合适的连接方式。一般来说,如果希望保留两个数据源中所有数据就用 outer ,如果只需要保留两者公共部分就用 inner 。...上面就是将 X, Y 设置了多层级索引 In [19]: res = pd.concat([df1, df2], axis=1, keys=['X', 'Z']) In [20]: res Out[20

    41300

    一文讲述Pandas库的数据读取、数据获取、数据拼接、数据写出!

    其实Pandas能实现的功能,远远不止这些,关于利用该库如何实现数据清晰和图表制作,不是本书的研究范围,大家可以下去好好学习这个库。 使用这个库之前,需要先导入这个库。...Pandas库中,读取excel文件使用的是pd.read_excel()函数,这个函数强大的原因是由于有很多参数供我们使用,是我们读取excel文件更方便。...pandas中,标签索引使用的是loc方法,位置索引用的是iloc方法。接下来就基于图中这张表,来带着大家来学习如何 “取数”。 首先,我们需要先读取这张表中的数据。...Excel数据的拼接 进行多张表合并的时候,我们需要将多张表的数据,进行纵向(上下)拼接。pandas中,直接使用pd.concat()函数,就可以完成表的纵向合并。...Pandas库中,将数据导出为xlsx格式,使用的是DataFrame对象的to_excle()方法,其中这里面有4个常用的参数,详情如下。

    6.7K30

    Pandas 功能介绍(二)

    条件过滤 我们需要看第一季度的数据是怎样的,就需要使用条件过滤 体感的舒适适湿度是40-70,我们试着过滤出体感舒适湿度的数据 最后整合上面两种条件,一季度体感湿度比较舒适的数据 排序 数据按照某进行排序...axis=1) 方差,行 df.std(axis=0),df.std(axis=1) DataFrame 转换为 Numpy DataFrame 合并 连接合并 两个 df 的结果一致的情况下,我们可以简单两个...df 拼接起来 垂直(行)拼接,pd.concat([df1,df2],axis=0),水平()拼接,pd.concat([df1,df2],axis=1) 基于索引关键字合并 Pandas 还提供了像...通过这两次的分享,我们已经了解了 pandas 数据处理常用的方式方法。...文件内容简单说明: 文件地址: bikeshare.zip 云+社区:[数据分析工具] Pandas 功能介绍(二) 知乎:[数据分析工具] Pandas 功能介绍(二)

    1.6K60

    Python3分析Excel数据

    pandas提供isin函数检验一个特定值是否一个列表中 pandas_value_in_set.py #!...有两种方法可以Excel文件中选取特定的: 使用索引值 使用标题 使用索引值 用pandas设置数据框,方括号中列出要保留的的索引值或名称(字符串)。...用loc函数,标题列表前面加上一个冒号和一个逗号,表示为这些特定的保留所有行。 pandas_column_by_name.py #!...然后,用loc函数每个工作表中选取特定的,创建一个筛选过的数据框列表,并将这些数据框连接在一起,形成一个最终数据框。...工作簿中读取一组工作表 一组工作表中筛选特定行 用pandas工作簿中选择一组工作表,read_excel函数中将工作表的索引值或名称设置成一个列表。

    3.4K20
    领券