Open High Low Close Shifted_Close Movements Sign
Date
2018-04-21 8875.1 9075.0 8629.3 8944.6 8875.0 69.6 Positive
2018-04-22 8939.7 9072.0 8760.5 8811.8 8944.6 -132.8 Negative
2018-04-23 8796.3 9032.1 8784.9 8954.1 8811.8 142.3 Positive
2018-04-24 8959.0 9749.0 8947.0 9661.7 8954.1 707.6 Positive
2018-04-25 9661.7 9750.0 8767.0 8974.5 9661.7 -687.2 Negative
这是我使用熊猫的表格。我想知道如何在最新的条目“2018-04-25”上做一个简单的if函数。
这将是:
if btc_usd_price_kraken['Sign'] == 'Negative':
print("Buy coins now")
但我只想要一个条目。
由于
答案 0 :(得分:0)
您可以使用{<1}}访问所有记录:
Signin = 'negative'
输出:
df.loc[df['Sign']=='Negative']
您可以使用以下条件访问最后一条记录:
Open High Low Close Shifted_Close Movements Sign
Date
2018-04-22 8939.7 9072.0 8760.5 8811.8 8944.6 -132.8 Negative
2018-04-25 9661.7 9750.0 8767.0 8974.5 9661.7 -687.2 Negative
输出:
df.loc[df['Sign']=='Negative'].iloc[-1]
使用Open 9661.7
High 9750
Low 8767
Close 8974.5
Shifted_Close 9661.7
Movements -687.2
Sign Negative
Name: 2018-04-25, dtype: object
条件检查上一个if
值:
Sign
答案 1 :(得分:0)
我认为你想要这样的东西,如果他的数据框总是排序,使得最后一个值是底部记录:
df.iloc[-1, df.columns.get_loc('Sign')]
输出:
'Negative'
如果没有,你可以:
df.sort_index().iloc[-1, df.columns.get_loc('Sign')]
答案 2 :(得分:0)
假设您的数据框的名称为TEXT/BLOB
。
首先,请注意您将获得最新日期:
df
使用此df.index.max()
,使用Sign
.loc
的相应值
df.loc[df.index.max(), 'Sign']
这会返回Sign
日期2018-04-25
的值,这是您要继续使用if条件的原因:
if df.loc[df.index.max(), 'Sign'] == 'Negative':
print("Buy coins now")