当我这样做时
subm = reddit.user.karma()
print(subm)
我得到了这样的字典:
{Subreddit(display_name='AskReddit'): {'comment_karma': 1308, 'link_karma': 4}, Subreddit(display_name='food'): {'comment_karma': 67, 'link_karma': 72}, Subreddit(display_name='Documentaries'): {'comment_karma': 128, 'link_karma': 2}, Subreddit(display_name='explainlikeimfive'): {'comment_karma': 2, 'link_karma': 1},}
如何将其转换为DF?我所尝试的是不工作,因为我总是得到错误TypeError: 'Subreddit' object is not iterable
TypeError: cannot unpack non-iterable Subreddit object
From PRAW docs:
返回的字典包含subreddits作为键。每个subreddit键包含一个子字典,其中有comment_karma和link_karma的键。字典按因果报应降序排序。注意:主字典的每个键都是Subreddit的一个实例。建议遍历字典以检索值,最好是通过dict.items()。
df = pd.DataFrame(data=subm.values(), index=(key.display_name for key in subm.keys()))
你将得到一个DataFrame与原始子dicts的键作为列,和display_name
的每个Subreddit对象作为索引。您总是可以使用.T
属性切换DataFrame的索引和列。