pandas 对某列求最大最小.max()和.min()方法为什么数据不对呀?

问题遇到的现象和发生背景

用baostock导了日K,用alchemy/create_engine放在db里,然后for循环遍历出单个的DateFrame,对某列求最大最小的时候,发现明显跟当列对不上

问题相关代码,请勿粘贴截图
for i in nn:
    exa_1 = pd.read_sql(i,engine)
    exa_1.set_index('date',inplace = True)
          ##得到价格
    p_close = exa_1.loc[a_r_0:a_r]['close']
    p_median = p_close.median()
    p_start = p_close[0]
    p_start = float(p_start)
        
    p_risk = (float(p_close.max()) - float(p_close.min())) \
    / 2 / float(p_start)
    

运行结果及报错内容

img

我的解答思路和尝试过的方法

p_close就是当前DateFrame的一列呀,控制台上p_close也能打出来最低明明有8点几的,结果p_close.min()就显示是10噢,.max()也不对,搞不懂为啥

我想要达到的结果

p_close.min()显示正确

知道了,要对p_close进行值的类型转换

p_close = p_close.astype('float')

还是不解啊,一般的object类型我试了可以作列的 .max() 啊,这里就非得转成float ,不过从结果看数值缩到只有小数点后两位了