从Pandas数据框架中随机选择列

从Pandas数据框架中随机选择列

在这篇文章中,我们将讨论如何从Pandas Dataframe中随机选择列。

根据我们的要求,我们可以从pandas数据库方法中随机选择列,其中pandas df.sample()方法帮助我们随机选择行和列。

pandas sample()方法的语法:

返回从一个对象的axis上随机选择的元素。为了重复性,你可以使用随机_状态参数。

DataFrame.sample(n=None, frac=None, replace=False, weights=None, random_state=None, axis=None)

参数:

  • n:int值,要生成的随机行数。
  • frac: Float value, 返回值 (float value * length of data frame values ). frac不能与n一起使用。
  • replace: 布尔值,如果为真,返回带替换的样本。
  • random_state:int值或numpy.random.RandomState,可选。如果设置为一个特定的整数,将在每次迭代中返回与样本相同的行。
  • axis:0或’行’代表行,1或’列’代表列。

方法1:随机选择一列

在这个方法中,首先读取Pandas包,用pd.read_csv()方法导入给定的CSV文件,用来读取数据集。df.sample()方法用来随机选择行和列。 axis =’ columns’ 表示我们正在选择列。

# import packages
import pandas as pd
  
# reading csv file
df =pd.read_csv('fossilfuels.csv')
pd.set_option('display.max_columns', None)
print(df.head())
  
# randomly selecting columns
df = df.sample(axis='columns')
print(df)
Python

输出:

从Pandas数据框架中随机选择列

方法2:在随机状态下选择若干列

在这种方法中,如果用户想选择一定数量的超过1的列,我们使用参数’n’来实现这一目的。在下面的例子中,我们把n定为5。从数据库中随机选择5个列。

# import packages
import pandas as pd
  
# reading csv file
df =pd.read_csv('fossilfuels.csv')
pd.set_option('display.max_columns', None)
print(df.head())
print()
  
# randomly selecting columns
df = df.sample(n=5, axis='columns')
print(df.head())
Python

输出:

从Pandas数据框架中随机选择列

方法3:允许多次随机选择同一列(通过设置替换=True)

在这里,在这种方法中,如果用户想多次选择一个列,或者在我们的选择中需要重复性,我们应该在df.sample()方法中设置替换参数为’True’。列 “Bunkerfields “被重复了两次。

# import packages
import pandas as pd
  
# reading csv file
df =pd.read_csv('fossilfuels.csv')
pd.set_option('display.max_columns', None)
print(df.head())
print()
  
# randomly selecting columns
df = df.sample(n=5, axis='columns',replace='True')
print(df.head())
Python

输出:

从Pandas数据框架中随机选择列

方法4:随机选择总列数的一部分

在这种方法中,如果用户想选择数据集的一部分,应该使用frac参数。在下面的例子中,我们的数据集有10列。10的0.25是2.5,它被进一步四舍五入为2。 一个年份和GasFlaring列被返回。

# import packages
import pandas as pd
  
# reading csv file
df =pd.read_csv('fossilfuels.csv')
pd.set_option('display.max_columns', None)
print(df.head())
print()
  
# randomly selecting columns
df = df.sample(frac=0.25, axis='columns')
print(df.head())
Python

输出:

从Pandas数据框架中随机选择列

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册