我有两个数据集。
第一个,在市场变量中包含具有以下结构的一般市场趋势:
Date High Close Volume Open Low
第二,在心情变量中,每一天都包含一些推文,在这个结构中带有同样的情绪:
body date datetime id sentiment time
所以,我想每天数一数有多少“熊市”和“牛市”情绪。它的工作原理,这是我的代码与注释:
# Read the datasets
market = pd.read_csv("Datasets/SP500/aggregates.txt")
moods = pd.read_json("Datasets/DatasetStockTwits-Aggregato.json")
# Remove all null sentiments
moods = moods[moods.sentiment != "null"]
# Get a generic subsets of data for computational speed
market_tail = market.tail(100)
# For each day present in market_tail, get the same days twits
moods_tail = moods.loc[moods['date'].isin(market_tail.Date)]
# So now I count for each day how many "Bearish" and "Bullish" twits there are
sentiments_count = pd.crosstab(moods_tail['date'], moods_tail['sentiment'])
print(sentiments_count)
结果如下:
sentiment Bearish Bullish
date
2017-11-03 9 12
2017-11-05 3 6
2017-11-06 20 9
2017-11-07 16 35
所以它工作得很好,但我不明白为什么我不能访问情感。日期
或情绪计数['date']
索引。
事实上,如果我尝试这样的事情:
print(sentiments_count['date'])
我获得:keyrerror:“日期”
我错过了什么吗?谢啦
您不能选择它,因为它是索引
,所以需要:
print(sentiments_count.index)
对于从索引创建列
需要重置索引
,也可以为数据清理添加重命名轴
以删除列名情感
:
sentiments_count = sentiments_count.reset_index().rename_axis(None, 1)
print(sentiments_count['date'])
假设我们有这样一个数据frame: 我们还有另一个具有相同行数和列数(具有相同名称)的DataFrame: 我不知道如何创建另一个由和组成的DataFrame,使其看起来像下面的DataFrame(可能有两个索引级别): 阅读基于列标签在pandas中重新塑造dataframes并从多个dict创建一个pandas DataFrame,这给了我一些见解(因为我也试图通过以下方法来实现:首先将原始d
问题内容: 使用以下DataFrame,如何在不让Pandas将移位后的值分配给其他索引值的情况下基于索引来移位“ beyer”列? 生产… 问题在于,佩恩特得到了分配最后一位战士的啤酒。相反,我希望它像这样… 问题答案: 使用应用转移到各组分别:(感谢Jeff指出这个简化) 如果您有一个多索引,则可以通过将一系列或级别名称传递给 参数来对多个级别进行分组。
问题内容: 这是我遇到错误的方式: 类型为,其中包含行索引列表。所有这些行索引都属于。 这是我需要过滤的条件。 如果我分别执行以下命令,则不会收到任何警告: 但是,如果将它们放在一起,则会收到警告消息(但可以看到结果): 布尔系列键将重新索引以匹配DataFrame索引 此错误消息是什么意思?它会影响返回的结果吗? 问题答案: 尽管有警告,您的方法仍然可以使用,但是最好不要依赖隐式,不清楚的行为。
问题内容: 我正在尝试重新索引熊猫对象,像这样, 我正在如下所示进行操作,并且得到了错误的答案。有关如何执行此操作的任何线索? 知道为什么会这样吗? 问题答案: 为什么不简单地使用方法?
问题内容: 我正在尝试仅使用来自多索引DataFrame的一个索引来创建新的DataFrame。 理想情况下,我想要这样的事情: 和: 本质上,我想删除除level之外的多索引的所有其他索引。是否有捷径可寻? 问题答案: 一种方法是简单地重新绑定到所需的MultiIndex级别。您可以通过指定要保留的标签名称来做到这一点: 或使用级别的整数值: MultiIndex的所有其他级别将在此处消失。