小编kbr*_*r85的帖子

Pandas,如何使用多索引数据帧的子集删除值?

我有一个带有多索引列的数据框。

我需要从此数据框中删除列子集中具有 NaN 值的行。

我正在尝试使用subset选项pd.dropna,但我无法找到指定列子集的方法。我尝试过使用pd.IndexSlice但这不起作用。

在下面的示例中,我需要乘坐最后一排。

import pandas as pd

# ---
a = [1, 1, 2, 2, 3, 3]
b = ["a", "b", "a", "b", "a", "b"]
col = pd.MultiIndex.from_arrays([a[:], b[:]])
val = [
    [1, 2, 3, 4, 5, 6],
    [None, None, 1, 2, 3, 4],
    [None, 1, 2, 3, 4, 5],
    [None, None, 5, 3, 3, 2],
    [None, None, None, None, 5, 7],
]
# ---
df = pd.DataFrame(val, columns=col)
# --- …
Run Code Online (Sandbox Code Playgroud)

nan python-3.x pandas

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

用python检测操作系统

我四处寻找我的问题的解决方案,我能找到的最好的是:

from sys import platform
if platform == "linux" or platform == "linux2":
    # linux
elif platform == "darwin":          
    # OS X
elif platform == "win32":             
    # Windows...
Run Code Online (Sandbox Code Playgroud)

有谁知道我如何将 Linux PC 与 android 区分开来,因为 android 是基于 Linux 的。如果这是可能的,我如何将 Mac OS 与 iOS 区分开来

operating-system differentiation python-3.x

4
推荐指数
2
解决办法
7677
查看次数

从元组列表中获取其元素之间差异最大的元组

假设我有一个类似元组的列表:

listTuples = [(0, 3), (5, 10), (2, 4)] 
Run Code Online (Sandbox Code Playgroud)

我想获取元组元素之间差异最大的元组索引

3 - 0 = 3
10 - 5 = 5
4 - 2 = 2
Run Code Online (Sandbox Code Playgroud)

所以我想要1作为回报。

目前,我正在执行以下操作,但是也许有更好的方法(更快,更少的代码行)来执行此操作。

listTuples = [(0, 3), (5, 10), (2, 4)] 

k = 0
e = 0

for j, i in enumerate(listTuples):
    diff = i[1] - i[0]
    if k < diff:
        k = diff
        e = j
    else:
        pass

print(e)
Run Code Online (Sandbox Code Playgroud)

python tuples list python-3.x

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