无涯教程-DataFrame.loc

74 阅读1分钟

DataFrame.loc[] 用于通过DataFrame中的标签或布尔数组检索行和列组。它仅使用索引标签,并且如果它存在于调用方DataFrame中,则返回行,列或DataFrame。

DataFrame.loc[] 是基于标签的,但可以与布尔数组一起使用。

.loc[] 的允许输入为:

  • 单个标签,例如 7 a 。在这里, 7 被解释为索引的标签。
  • 标签列表或数组,例如[x,y,z]。
  • 带有标签的切片对象,例如x:f。
  • 相同长度的布尔数组。例如[True,True,False]。
  • 具有一个参数的 callable 函数。

语法

pandas.DataFrame.loc[]

返回值

它返回Scalar,Series或DataFrame。

例子

#以pd格式导入Pandas

import pandas as pd
# 创建数据框
info = pd.DataFrame({Age:[32, 41, 44, 38, 33], 
                   Name:[Phill, William, Terry, Learnfk, Parker]}) 
#创建索引
index_ = [Row_1, Row_2, Row_3, Row_4, Row_5] 

# 设置索引 info.index = index_

# 返回值 final = info.loc[Row_2, Name]

# 打印结果 print(final)

输出:

William

例子2:

# importing pandas as pd
import pandas as pd
# 创建数据框
info = pd.DataFrame({"P":[28, 17, 14, 42, NaN],  
                   "Q":[15, 23, NaN, 15, 12],  
                   "R":[11, 23, 16, 32, 42],  
                   "S":[41, NaN, 34, 25, 18]})  
# 创建索引
index_ = [A, B, C, D, E] 
# 设置索引
info.index = index_ 
# 打印数据框
print(info)

输出:

P         Q      R         S
A   28.0    15.0    11   41.0
B   17.0    23.0    23   NaN
C   14.0    NaN    16   34.0
D   42.0   15.0     32   25.0
E NaN    12.0    42   18.0

现在,无涯教程必须使用 DataFrame.loc 属性返回DataFrame中存在的值。

# 返回值
result = info.loc[:, [P, S]] 
# 打印结果
print(result)

输出:

    P    S
A 28.0  41.0
B 17.0   NaN
C14.0  34.0
D  42.0  25.0
ENaN  18.0

参考链接

www.learnfk.com/pandas/pand…