繁体   English   中英

Python Pandas Dataframe.at function

[英]Python Pandas Dataframe.at function

使用

a = df.at('x', 'y')

这应该返回包含“x”的行中单元格的值和列 header“y”吗?

包含“x”的行既不是行名也不是第一列,这有关系吗?

如果没关系,任何人都可以建议这里可能是什么问题。

这是一些示例数据

     Account   Asset Symbol SecType Currency  Position  Avg cost
0  DU2870371  USDCAD    USD    CASH      CAD -232475.0  1.286397
2  DU2870371  AUDUSD    AUD    CASH      USD  285611.0  0.756396

然后我将其保存到 csv。在另一个脚本中,我从 CSV 加载它并使用

a = df.at['USDCAD', 'Position']

我希望它返回值-232475.0而是说 KeyError: 'USDCAD'

通过索引中的标签(来自资产列)和列名称将列Asset转换为 select 的索引:

df = df.set_index('Asset')
a = df.at['USDCAD', 'Position']

也可以使用boolean indexing ,但是 output 是空的,一个或多个值在Series中:

s = df.loc[df['Asset'].eq('USDCAD'), 'Position']

因此,对于 Series 的第一个值,可以使用:

a = s.iat[0]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM