【发布时间】:2018-08-13 18:24:14
【问题描述】:
我正在使用 pytreasurydirect 提取数据,我想查询每个唯一的 cusip,然后附加它们并创建一个 pandas 数据框表。我在生成熊猫数据框时遇到了困难。我相信这是因为数据的 unicode 结构。
import pandas as pd
from pytreasurydirect import TreasuryDirect
td = TreasuryDirect()
cusip_list = [['912796PY9','08/09/2018'],['912796PY9','06/07/2018']]
for i in cusip_list:
cusip =''.join(i[0])
issuedate =''.join(i[1])
cusip_value=(td.security_info(cusip, issuedate))
#pd.DataFrame(cusip_value.items())
df = pd.DataFrame(cusip_value, index=['a'])
td = td.append(df, ignore_index=False)
来自 pytreasurydirect 的数据示例:
Index([u'accruedInterestPer100', u'accruedInterestPer1000',
u'adjustedAccruedInterestPer1000', u'adjustedPrice',
u'allocationPercentage', u'allocationPercentageDecimals',
u'announcedCusip', u'announcementDate', u'auctionDate',
u'auctionDateYear',
...
u'totalTendered', u'treasuryDirectAccepted',
u'treasuryDirectTendersAccepted', u'type',
u'unadjustedAccruedInterestPer1000', u'unadjustedPrice',
u'updatedTimestamp', u'xmlFilenameAnnouncement',
u'xmlFilenameCompetitiveResults', u'xmlFilenameSpecialAnnouncement'],
dtype='object', length=116)
【问题讨论】:
-
你能展示一下 cusip_value 的样子吗?迭代对 pandas 没有好处。
-
cusip 值为 = 912796PY9。此值存在于两个不同的国库券发行 08/09/2018 和 06/07/2018
-
这段代码在做什么?
td.security_info(cusip, issuedate)) -
此代码正在组合一个数据集,其中包含按个人债券计算的所有美国国债。 cusip/发行日期是唯一的债务键。
标签: python pandas dataframe unicode