相关疑难解决方法(0)

如何更改DataFrame列的顺序?

我有以下DataFrame(df):

import numpy as np
import pandas as pd

df = pd.DataFrame(np.random.rand(10, 5))
Run Code Online (Sandbox Code Playgroud)

我通过赋值添加更多列:

df['mean'] = df.mean(1)
Run Code Online (Sandbox Code Playgroud)

如何将列移动mean到前面,即将其设置为第一列,使其他列的顺序保持不变?

python dataframe pandas

729
推荐指数
23
解决办法
76万
查看次数

在Pandas DataFrame中反转列顺序的大O复杂性是什么?

所以假设我在pandas中有一个DataFrame,其中包含am行和n列.我们还要说我想颠倒列的顺序,可以使用以下代码完成:

df_reversed = df[df.columns[::-1]]
Run Code Online (Sandbox Code Playgroud)

这项行动的大O复杂性是什么?我假设这将取决于列数,但它还取决于行数?

python algorithm big-o numpy pandas

15
推荐指数
1
解决办法
576
查看次数

为什么熊猫 reindex() 不能就地运行?

重新索引文档

使用可选的填充逻辑使 DataFrame 符合新索引,将 NA/NaN 放置在前一个索引中没有值的位置。除非新索引与当前索引等效并且 copy=False,否则将生成一个新对象。

因此,我认为我会Dataframe通过设置copy=False 到位 (!) 来重新排序。但是,看来我确实得到了一个副本,并且需要再次将其分配给原始对象。如果我可以避免它,我不想将它分配回来(原因来自另一个问题)。

这就是我正在做的:

import numpy as np
import pandas as pd

df = pd.DataFrame(np.random.rand(5, 5))

df.columns = [ 'a', 'b', 'c', 'd', 'e' ]

df.head()
Run Code Online (Sandbox Code Playgroud)

出局:

          a         b         c         d         e
0  0.234296  0.011235  0.664617  0.983243  0.177639
1  0.378308  0.659315  0.949093  0.872945  0.383024
2  0.976728  0.419274  0.993282  0.668539  0.970228
3  0.322936  0.555642  0.862659  0.134570  0.675897
4  0.167638  0.578831  0.141339  0.232592  0.976057
Run Code Online (Sandbox Code Playgroud)

Reindex 给了我正确的输出,但我需要将它分配回原始对象,这是我想通过使用来避免的 …

python dataframe pandas reindex

12
推荐指数
1
解决办法
6110
查看次数

标签 统计

pandas ×3

python ×3

dataframe ×2

algorithm ×1

big-o ×1

numpy ×1

reindex ×1