pandas內之商品報價更新 (Line 530)
【結論】
1. 產生空的dataframe: df_RepStock = pd.DataFrame()
2. 判断DataFrame是否为空: df.empty
3. 判断DataFrame中是否已有某商品:
x=df_RepStock.index[df_RepStock['id']=='TXO17100H3'].to_list()
4. 將某商品加入DataFrame中:
df_RepStock = pd.concat([df_RepStock, df], axis=0)
5.更改某商品在DataFrame中的值:
4.使用条件表达式进行查询
##查询上证指数收盘<3000点的,且成交额少于1000亿(amount单位为千元)的日子,显示全部的列
df.loc[(df['close'] < 3000) & (df['amount'] < 100000000),:]
https://zhuanlan.zhihu.com/p/138037895
df.loc['id','close']=value
https://blog.csdn.net/RPG_Zero/article/details/109190053
如果你想只查詢滿足作為引數傳遞的布林條件的 DataFrame 的匹配索引,pandas.DataFrame.index() 是最簡單的實現方式。
import pandas as pd
import numpy as np
np.random.seed(0)
df = pd.DataFrame(np.random.randint(1,20,size=(20, 4)), columns=list('ABCD'))
print (df.index[df['B'] == 19].tolist())
import pandas as pd
import numpy as np
np.random.seed(0)
df = pd.DataFrame(np.random.randint(1,20,size=(20, 4)), columns=list('ABCD'))
print (df.index[df['B'] == 19].tolist())
用精確字串匹配獲取行的索引
print (df.index[(df['Name'] == 'blue')].tolist())
print ('\n')
print (df.loc[df['Name'] == 'blue'])
print ('\n')
print (df.loc[(df['Name'] == 'charlie') & (df['Type'] =='Raptors')])
https://www.delftstack.com/zh-tw/howto/python-pandas/pandas-get-index-of-row/
https://blog.csdn.net/weixin_43977640/article/details/109909787
x=df_RepStock.index[df_RepStock['id']=='TXO17100H3'].to_list()
File "d:\tw-skcom-python-43\all\.venv\lib\site-packages\pandas\core\frame.py", line 3805, in __getitem__
indexer = self.columns.get_loc(key)
File "d:\tw-skcom-python-43\all\.venv\lib\site-packages\pandas\core\indexes\base.py", line 3802, in get_loc
raise KeyError(key) from err
KeyError: 'id'
可以使用 df.empty 来判断一个Pandas DataFrame 是否为空。 如果DataFrame 为空,则返回True,否则返回False。 还可以使用 df.shape[0] 来判断DataFrame 中是否有行,如果有行,则返回True,否则返回False。
成功解決問題
df=df.set_index('id')
df.loc['id','close']=value
https://blog.csdn.net/RPG_Zero/article/details/109190053
x=df_RepStock.index[df_RepStock['id']=='TXO17100H3'].to_list()
File "d:\tw-skcom-python-43\all\.venv\lib\site-packages\pandas\core\frame.py", line 3805, in __getitem__
indexer = self.columns.get_loc(key)
File "d:\tw-skcom-python-43\all\.venv\lib\site-packages\pandas\core\indexes\base.py", line 3802, in get_loc
raise KeyError(key) from err
KeyError: 'id'
5.更改某商品在DataFrame中的值:df=df.set_index('id')df.loc['id','close']=value
如何取出df中之close?
Debug Console:
df.loc["TXO17100H3","close"]
'170.0'
成功..
成功..
沒有留言:
張貼留言