当前位置: 首页 > 面试题库 >

如何使用条件索引获取单元格上的标量值

满雨石
2023-03-14
问题内容

我有如下所示的数据框。我需要获取列B的标量值,具体取决于A的值(这是我脚本中的变量)。我正在尝试loc()函数,但它返回的是Series而不是标量值。如何获得标量value()?

>>> x = pd.DataFrame({'A' : [0,1,2], 'B' : [4,5,6]})
>>> x
   A  B
0  0  4
1  1  5
2  2  6

>>> x.loc[x['A'] == 2]['B']
2    6
Name: B, dtype: int64

>>> type(x.loc[x['A'] == 2]['B'])
<class 'pandas.core.series.Series'>

问题答案:

首先,最好从中访问行索引和列索引.loc

x.loc[x['A'] == 2, 'B']

其次,您始终可以在.values序列或数据框上使用底层的numpy矩阵:

In : x.loc[x['A'] == 2, 'B'].values[0]
Out: 6

最后,如果您对原始问题的“条件索引”不感兴趣,则还可以使用特定的访问器来从DataFrame中获取单个标量值:dataframe.at[index, column]dataframe.iat[i, j](这些类似于.loc[].iloc[]设计用于快速访问单个值)



 类似资料:
  • 我正在使用google电子表格API v4 for java。 我的电子表格看起来像这样- 我想查找带有用户“User2”和时间银行(空值)的行索引。之后,我想使用此行索引在该行中添加时间值。是否可以在不知道范围或索引的情况下逐行搜索单元格值? 在上面的示例中,当它与条件(User='User2'和Time='')匹配时,它应该只返回最后一行索引。甚至更好的是,是否存在查找和替换API,它将查找行

  • 在过去的几天里,我一直在尝试从图片中获取数独网格,我一直在努力获取网格中较小的正方形。我正在制作下面的图片。我原以为用canny过滤器处理图像会很好,但事实并非如此,我无法得到每个正方形的所有轮廓。然后,我将自适应阈值、otsu和一个经典阈值用于测试,但每次,它似乎都无法捕获每个小正方形。 最终的目标是获得包含数字的单元格,并使用Pytork识别数字,因此我非常希望获得一些数字的清晰图像,以便识别

  • 有人能给我一个解决方案,我可以在单元格为空时读取应用到单元格的样式吗? 谢了。

  • 我构造了一个从数据帧中提取一行条件: 现在我想从一个特定列中取一个值:

  • 我们如何从谷歌电子表格中的单元格中获得价值? 我有行和列索引从

  • 我试图通过单元格引用从行中获取单元格,但我遇到了一个问题。例如,我有: 如果列索引是,那么该操作很好,但是如果列被删除,因此列索引变成了并且方法:仍然将其转换为在这种情况下,我无法获取我的列,我将获取。 所以问题是,我如何从行中获得列,取决于单元格标识符,这是一个字母?