从 pandas 中的列索引位置检索日期并粘贴到 PyQt 中
Retrieve date from column index position in pandas and paste in PyQt
我想检索 Pandas 数据框的一个索引位置的日期并将其粘贴到 PyQt 应用程序的 LineEdit 中。
我目前拥有的是:
purchase = sales [['Total','Date']]
pandas_value = purchase.iloc[-1:]['Date'] # last position of the "Date" column
pyqt_value = str(pandas_value)
# This returns :
67 2016-10-20
Name: Data, dtype: datetime64[ns]
整个输出在 LineEdit 中显示为:67 2016-10-20 名称:数据,数据类型:datetime64[ns]
我也尝试过转换日期,但无济于事:
pandas_value.strftime('%Y-%m-%d')
'Series' object has no attribute 'strftime'
有没有办法只检索和粘贴日期,例如:2016-10-20?
或更好:有没有办法从 pandas 中的任何索引位置检索任何值作为字符串?
在此先感谢您的帮助。
pandas
returns 它作为 Series
就像一个 list
(通常它保留一行或一列数据)所以你必须使用索引来获得价值。您 Series
只有一个值,因此您可以使用索引 [0]
(或者可能 [67]
因为您的文本显示值 67
作为索引)
pyqt_values = str(panda_values[0])
你可以这样做:
In [37]: df
Out[37]:
Date a
0 2016-01-01 0.228208
1 2016-01-02 0.695593
2 2016-01-03 0.493608
3 2016-01-04 0.728678
4 2016-01-05 0.369823
5 2016-01-06 0.336615
6 2016-01-07 0.012200
7 2016-01-08 0.481646
8 2016-01-09 0.773467
9 2016-01-10 0.550114
In [38]: df.iloc[-1, df.columns.get_loc('Date')].strftime('%Y-%m-%d')
Out[38]: '2016-01-10'
我想检索 Pandas 数据框的一个索引位置的日期并将其粘贴到 PyQt 应用程序的 LineEdit 中。
我目前拥有的是:
purchase = sales [['Total','Date']]
pandas_value = purchase.iloc[-1:]['Date'] # last position of the "Date" column
pyqt_value = str(pandas_value)
# This returns :
67 2016-10-20
Name: Data, dtype: datetime64[ns]
整个输出在 LineEdit 中显示为:67 2016-10-20 名称:数据,数据类型:datetime64[ns]
我也尝试过转换日期,但无济于事:
pandas_value.strftime('%Y-%m-%d')
'Series' object has no attribute 'strftime'
有没有办法只检索和粘贴日期,例如:2016-10-20?
或更好:有没有办法从 pandas 中的任何索引位置检索任何值作为字符串?
在此先感谢您的帮助。
pandas
returns 它作为 Series
就像一个 list
(通常它保留一行或一列数据)所以你必须使用索引来获得价值。您 Series
只有一个值,因此您可以使用索引 [0]
(或者可能 [67]
因为您的文本显示值 67
作为索引)
pyqt_values = str(panda_values[0])
你可以这样做:
In [37]: df
Out[37]:
Date a
0 2016-01-01 0.228208
1 2016-01-02 0.695593
2 2016-01-03 0.493608
3 2016-01-04 0.728678
4 2016-01-05 0.369823
5 2016-01-06 0.336615
6 2016-01-07 0.012200
7 2016-01-08 0.481646
8 2016-01-09 0.773467
9 2016-01-10 0.550114
In [38]: df.iloc[-1, df.columns.get_loc('Date')].strftime('%Y-%m-%d')
Out[38]: '2016-01-10'