如何通过提供三个列名来切片数据框来获取值?
how to get a value by slicing a dataframe by giving three column names?
嘿,stack family 在从 pandas 数据帧中获取值时需要一些帮助,但卡在这里任何帮助将不胜感激。
我想从这个 ohlc 数据帧中获取一个值。
brick_counts time_id efi
1 1 1000
2 1 1500
3 1 2000
4 2 2500
5 2 2600
6 2 3200
在这里,为了从 efi 列中切出单个值,我首先制作了 brick 和 time_id 列作为索引,并尝试通过此方法获取值。
我正在取 time_id 的最大值,因为我需要数据帧中的最大值 time_id。
ohlc.set_index(['brick_counts' , 'time_id'] , inplace = True)
latest_time = ohlc['time_id'].max()
efi_pos1 = ohlc.loc[(6,int(latest_time)),'efi']
但问题是它给了我设置索引的系列格式的值,而不是只给出我需要的单个浮点数。
任何人都可以更喜欢我任何其他切片方法来获取值而不应用 brick_counts 和 time_id 作为索引吗?
我需要 efi 的值,其中 brick 等于 6,time_id 是数据帧中最高的值。
获得最大的第一个 efi time_id
df.loc[df['time_id'].idxmax(), 'efi']
输出:2500
获取最大值的最大 efi time_id
df.loc[df['time_id'].eq(df['time_id'].max()), 'efi'].max()
输出:3200
efi_pos1 = ohlc.loc[(ohlc['brick_counts'] == 6) & (ohlc['time_id'] == ohlc['time_id'].max()), 'efi'].values[0]
print(efi_pos1)
输出:
3200
嘿,stack family 在从 pandas 数据帧中获取值时需要一些帮助,但卡在这里任何帮助将不胜感激。
我想从这个 ohlc 数据帧中获取一个值。
brick_counts time_id efi
1 1 1000
2 1 1500
3 1 2000
4 2 2500
5 2 2600
6 2 3200
在这里,为了从 efi 列中切出单个值,我首先制作了 brick 和 time_id 列作为索引,并尝试通过此方法获取值。
我正在取 time_id 的最大值,因为我需要数据帧中的最大值 time_id。
ohlc.set_index(['brick_counts' , 'time_id'] , inplace = True)
latest_time = ohlc['time_id'].max()
efi_pos1 = ohlc.loc[(6,int(latest_time)),'efi']
但问题是它给了我设置索引的系列格式的值,而不是只给出我需要的单个浮点数。
任何人都可以更喜欢我任何其他切片方法来获取值而不应用 brick_counts 和 time_id 作为索引吗?
我需要 efi 的值,其中 brick 等于 6,time_id 是数据帧中最高的值。
获得最大的第一个 efi time_id
df.loc[df['time_id'].idxmax(), 'efi']
输出:2500
获取最大值的最大 efi time_id
df.loc[df['time_id'].eq(df['time_id'].max()), 'efi'].max()
输出:3200
efi_pos1 = ohlc.loc[(ohlc['brick_counts'] == 6) & (ohlc['time_id'] == ohlc['time_id'].max()), 'efi'].values[0]
print(efi_pos1)
输出:
3200