有没有一种方法可以根据指定列中的值交换数据帧的整个行?

时间:2020-03-06 09:46:18

标签: python pandas dataframe row

我正在尝试找到一种方法,用于根据指定列中的值交换某些行的顺序。

示例代码

import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.randint(0,100,size=(100, 7)), columns=list('ABCDEFG'))

这会给你这样的东西:

print(df)

例如,我想做的是假设第5行移至第1行,因为df.loc(df['B'] == N)

中E列中的值是特定条件

我尝试将要交换的行分配给一个单独的变量,可以说我想将它们交换时将第5行的数据传递给foo,将第1行的数据传递给bar,然后覆盖第1行的值和5与foo和bar,但在它们的列中出现NaN错误。

我也尝试过与df.replace进行交换,但是我也没有得到太多的爱。

我知道我可以通过将整个数据帧交换到一个列表列表中并像这样进行操作,但这似乎不必要地占用大量计算资源。

反正有这样做吗?

很抱歉,如果没有出现数据框,我没有经验,也不确定如何使堆栈溢出以正确打印它-欢迎任何帮助!

谢谢!

0 个答案:

没有答案
相关问题