小编Ali*_*Ali的帖子

在列中输入具有最近邻平均值的缺失值

我有一个数据框:

df = pd.DataFrame(data=[676, 0, 670, 0, 668], index=['2012-01-31 00:00:00','2012-02-29 00:00:00',
                                                     '2012-03-31 00:00:00','2012-04-30 00:00:00',
                                                     '2012-05-31 00:00:00'])  
df.index.name = "Date"
df.columns = ["Number"]
Run Code Online (Sandbox Code Playgroud)

看起来像:

              Number
Date    
2012-01-31 00:00:00 676
2012-02-29 00:00:00 0
2012-03-31 00:00:00 670
2012-04-30 00:00:00 0
2012-05-31 00:00:00 668
Run Code Online (Sandbox Code Playgroud)

如何分别输入 (676+670)/2 和 (670+668)/2 的第二个和第四个值?

我可以将值另存为np.array并将它们输入数组,但这太荒谬了!

python dataframe pandas

6
推荐指数
1
解决办法
3619
查看次数

如何在 Pandas 中选择只有正值或负值的行

我有以下 DF:

df=pd.DataFrame({
                 'x':[1, 2, 3, -1, -2, -3],
                 'y':[-1, 3, 2, -4, 3, -2],
                 'z':[1 , 1, 5, 2, 1, -1]
Run Code Online (Sandbox Code Playgroud)

}) 或者

       x  y  z
    0  1 -1  1
    1  2  3  1
    2  3  2  5
    3 -1 -4  2
    4 -2  3  1
    5 -3 -2 -1
Run Code Online (Sandbox Code Playgroud)

目标是找到所有元素都具有相同(负或正)值的行。在本例中,这意味着选择第 1、2 和 5 行。

我将不胜感激任何帮助。我知道这个问题:Pandas - 比较正/负值, 但它没有解决值为负的情况。


谢谢 :)

python-3.x pandas

4
推荐指数
1
解决办法
6845
查看次数

在忽略顺序的多列上合并数据框

我有以下数据框:

df1=pd.DataFrame({'fr':[1,2,3],'to':[4,5,6],'R':[0.1,0.2,0.3]})
df2=pd.DataFrame({'fr':[1,5,3],'to':[4,2,6],'X':[0.4,0.5,0.6]})
Run Code Online (Sandbox Code Playgroud)

我想在 fr 和 to 上合并这两个数据帧,忽略 fr 和 to 的顺序,即(2,5)与(5,2)相同。所需的输出是:

dfO=pd.DataFrame({'fr':[1,2,3],'to':[4,5,6],'R':[0.1,0.2,0.3],'X':[0.4,0.5,0.6]})
Run Code Online (Sandbox Code Playgroud)

或者

dfO=pd.DataFrame({'fr':[1,5,3],'to':[4,2,6],'R':[0.1,0.2,0.3],'X':[0.4,0.5,0.6]})
Run Code Online (Sandbox Code Playgroud)

我可以执行以下操作:

pd.merge(df1,df2,on=['fr','to'],how='left')
Run Code Online (Sandbox Code Playgroud)

然而,正如预期的那样,第二行的 X 值是 NaN。

感谢您的帮助。

merge python-3.x pandas

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

标签 统计

pandas ×3

python-3.x ×2

dataframe ×1

merge ×1

python ×1