pandas panda返回 Dataframe 而不是字符串

slhcrj9b  于 2023-03-06  发布在  其他
关注(0)|答案(1)|浏览(131)

我有一个包含日期和浮点值的2列 Dataframe 。我有查找最小和最大浮点值的代码。然后我想从最小和最大值所在的同一行检索日期值,但代码没有返回日期值(或字符串),而是返回一个1行1列的 Dataframe ,其中包含所需的值。

max_weight = weight[weight.columns[1]].astype(float).max()
    min_weight = weight[weight.columns[1]].astype(float).min()

    max_weight_date = weight['Date'][ weight[weight.columns[1]].astype(float) ==  max_weight].astype(str) 
    min_weight_date = weight['Date'][ weight[weight.columns[1]].astype(float) ==  min_weight ].astype(str)

我试着添加.astype(str),希望能有所帮助,但没有效果。我的直觉是,虽然当前只返回1个值,但理论上代码可以返回多个行,因此返回 Dataframe 结果。我如何更改此代码,以便只将日期列的值返回为简单的字符串/日期,而不是 Dataframe ?

2guxujil

2guxujil1#

你可以在得到的 Dataframe 上使用. item()方法来获取日期列的值,这将返回 Dataframe 的标量值,而不是 Dataframe 。
试试这个:

max_weight = weight[weight.columns[1]].astype(float).max()
min_weight = weight[weight.columns[1]].astype(float).min()

max_weight_date = str(weight['Date'][ weight[weight.columns[1]].astype(float) ==  max_weight].item())
min_weight_date = str(weight['Date'][ weight[weight.columns[1]].astype(float) ==  min_weight ].item())

相关问题