熊市猫DataFrame位置[] Python中的属性

熊市猫DataFrame位置[] 函数用于通过标签或布尔数组访问一组行和列。 loc()方法主要基于标签完成,但是布尔数组也可以执行此操作。输入可以是各种类型,例如单个标签,例如9或“ x”,或者任何其他单个值可以是任何类型。它可以是列表或标签数组。前– [‘a’,’ b’,’ c’, ‘d’],也可以是布尔数组。前 [False, True, False]。

了解Pandas DataFrame位置

Pandas DataFrame loc是一种独特的方法,该方法获取索引标签并在调用方DataFrame中存在索引标签时返回row或DataFrame。 Pandas DataFrame定位为访问行和列组。

句法

DataFrame.loc[]

参量

以下是一些允许的输入:

  1. 单个标签–将行作为Series对象返回。
  2. 标签列表–返回选定行的DataFrame。
  3. 带标签的切片–返回带有指定行的系列,包括开始和结束标签。
  4. 布尔数组–返回DataFrame的True标签;数组的长度必须与所选轴的长度相同。
  5. 条件语句或Lambda函数–它返回有效值以选择要返回的行和列。

返回值

熊市猫位置[] 根据输入返回标量值,序列或DataFrame。

编写一个程序来演示loc()方法在Python中的工作。

import pandas as pd

dataset = {
    'Name': ['Rohit', 'Mohit', 'Sohit', 'Arun', 'Shubh'],
    'Roll no': ['01', '03', '04', '05', '09'],
    'Maths': ['93', '63', '74', '94', '83'],
    'Science': ['88', '55', '66', '94', '35'],
    'English': ['93', '74', '84', '92', '87']}

# Changing the above dictionary into dataframe
df = pd.DataFrame(dataset)

# Setting index values
index_values = ['1', '2', '3', '4', '5']

# Matching the index with the dataset
df.index = index_values
print("Dataframe:nn")
print(df)

# Now trying to access Sohit marks in maths only using loc()
result_dataframe = df.loc['3', 'maths']
print("nn Marks of Sohit in Maths:", result_dataframe)

输出量

Dataframe:

    Name Roll no Maths Science English
1  Rohit      01    93      88      93
2  Mohit      03    63      55      74
3  Sohit      04    74      66      84
4   Arun      05    94      94      92
5  Shubh      09    83      35      87

 Marks of Sohit in Maths: 74

在上面的示例中,我们看到我们创建了一个字典来存储学生的小型数据集,其中包括学生的姓名,并且在数学,科学和英语等不同学科中均未取得任何成绩。假设我们要提取特定学科的单个学生的成绩,然后可以使用loc()方法并传递学生姓名和想要获得所需输出的列。

使用loc访问多个DataFrame列[]

编写一个使用loc()函数返回多列的程序。

import pandas as pd

dataset = {
    'Name': ['Rohit', 'Mohit', 'Sohit', 'Arun', 'Shubh'],
    'Roll no': ['01', '03', '04', '05', '09'],
    'maths': ['93', '63', '74', '94', '83'],
    'science': ['88', '55', '66', '94', '35'],
    'english': ['93', '74', '84', '92', '87']}

# Changing the above dictionary into dataframe
df = pd.DataFrame(dataset)

# Setting index values
index_values = ['1', '2', '3', '4', '5']
# Matching the index with the dataset

df.index = index_values
print("Dataframe:nn")
print(df)

# Now trying to return multiple columns
result_dataframe = df.loc[:, ['Roll no', 'maths']]
print("nn Multiple Columns:n", result_dataframe)

输出量

Dataframe:

    Name Roll no maths science english
1  Rohit      01    93      88      93
2  Mohit      03    63      55      74
3  Sohit      04    74      66      84
4   Arun      05    94      94      92
5  Shubh      09    83      35      87


 Multiple Columns:
   Roll no maths
1      01    93
2      03    63
3      04    74
4      05    94
5      09    83

在上面的示例中,我们可以看到我们已经在同一学生的数据集上使用loc()函数返回了多列。我们返回的列是5列中的成交量数和数学。我们可以通过将第一个参数保留为空,将第二个参数保留为要返回的列名(以’:’分隔)来返回多列。

熊市猫DataFrame位置[] 在Jupyter笔记本上

Jupyter Notebook是开源Web应用程序,使我们能够创建和共享包含方程式,可视化,实时代码和叙述性文本的文档,这些文档包括数据清理和转换,数值模拟,统计建模,数据可视化,机器学习和多得多。

让我们创建一个笔记本并导入熊市猫。

import pandas as pd

现在,我们将使用rating.csv数据集。你可以在这里下载。

我们的下一步将是使用Pandas的read_csv()函数创建一个DataFrame。

df = pd.read_csv('ratings.csv')
df.head()

我们必须使用DataFrame.head()函数选择前五行,因为DataFrame非常大,而且我们不需要显示完整的DataFrame。

了解Pandas DataFrame位置[]

现在,让我们使用Pandas loc访问行和列[]。

位置[] 在DataFrame中使用单个标签

我们可以使用Pandas DataFrame中的单个标签来访问它。

df.loc[1]

它返回Series对象中DataFrame的第一行。

位置[] 在DataFrame中使用单个标签

我们可以使用type()函数查看对象的类型。

DataFrame loc的类型[]

获得单一价值

我们可以通过指定DataFrame行和列标签来获得单个值。

让我们找到第5行和索引4的placeID。

熊市猫DataFrame位置[] 说明

您可以看到我们得到了placeID的值,即135104。

熊市猫地方[] 有条件语句

我们可以使用条件语句获取DataFrame值。

假设,我们希望前五行的food_rating> 1。

df.loc[df['food_rating'] > 1].head()

熊市猫地方[] 有条件语句

在输出中,您可以看到前五行的food_rating> 1。

具有Lambda函数的Pandas DataFrame loc

Python Lambda函数是没有名称定义的函数。我们可以使用loc[] 使用lambda函数。

df.loc[lambda df1: df1['userID'] == 'U1077']

数据框位置[] 具有Lambda函数

我们已经定义并在loc中调用了lambda函数[] 获取唯一的用户ID为U1077的行。

使用loc设置DataFrame值[]

我们可以使用loc设置DataFrame值[] 属性。

我们可以通过指定行和列标签来设置特定索引的值来设置单个值。

df.loc[1, 'rating'] = 3
df.head()

使用loc设置DataFrame值[]

您可以看到我们已将1个索引行的等级从2更改为3。我们更新的DataFrame反映了该值。

我们可以为整个行设置值。

让我们为用户ID U1068分配Python None值。

df.loc[2] = None
df.head()

使用loc设置DataFrame值

您可以在第三行的值中看到字符串变成了None,数字值变成了NaN。

结论

Python DataFrame位置[] 属性是有用的,因为我们可以获取特定值并设置值。使用loc支持条件参数和lambda表达式[] 属性使它成为强大的资源。

也可以看看

熊市猫DataFrame iloc[]

如何在Pandas DataFrame中选择行

如何在Pandas DataFrame中迭代行

资讯来源:由0x资讯编译自APPDIVIDEND,版权归作者Ankit Lathiya所有,未经许可,不得转载
你可能还喜欢