用 Python 编写一个程序来选择给定 DataFrame 中的任意随机奇数索引行
pythonpandasserver side programmingprogramming
假设,您有一个数据框,
DataFrame 为: id mark age 0 1 70 12 1 2 60 13 2 3 40 12 3 4 50 13 4 5 80 12 5 6 90 13 6 7 60 12
并且,选择任意随机奇数索引行的结果是,
随机奇数索引行为: id 4 mark 50 年龄 13
解决方案
为了解决这个问题,我们将遵循下面给出的步骤 −
定义一个数据框
创建一个空列表以附加奇数索引值
创建一个 for 循环来访问所有索引。它定义如下,
for i in df.index.values:
创建一个 if 条件来检查奇数索引。如果匹配,则将值附加到列表中,
if(i%2==1): l.append(i)
从列表中生成任意一个随机值并将其存储为 random_index
random_index = rand.choice(l)
最后,使用 iloc 打印奇数索引行。
df.iloc[random_index]
示例
让我们看看下面的实现以更好地理解 −
import pandas as pd import random as rand df = pd.DataFrame({'id': [1,2,3,4,5,6,7], 'mark': [70,60,40,50,80,90,60], 'age':[12,13,12,13,12,13,12] }) print("DataFrame 是:\n",df) l = [] for i in df.index.values: if(i%2==1): l.append(i) random_index = rand.choice(l) print("随机奇数索引行是:\n", df.iloc[random_index])
输出
DataFrame 是: id mark age 0 1 70 12 1 2 60 13 2 3 40 12 3 4 50 13 4 5 80 12 5 6 90 13 6 7 60 12 随机奇数索引行是: id 4 mark 50 age 13 名称:3,dtype:int64