我无法从ggplot2切换到seaborn.目前使用的是Anaconda v.4.5.8和Python 3.6.3
我找不到任何图表.例如,我可以从seaborn的网站上获取任何代码并运行:
import matplotlib as plt
import seaborn as sns
sns.set(style="ticks")
dots = sns.load_dataset("dots")
# Define a palette to ensure that colors will be
# shared across the facets
palette = dict(zip(dots.coherence.unique(),
sns.color_palette("rocket_r", 6)))
# Plot the lines on two facets
sns.relplot(x="time", y="firing_rate",
hue="coherence", size="choice", col="align",
size_order=["T1", "T2"], palette=palette,
height=5, aspect=.75, facet_kws=dict(sharex=False),
kind="line", legend="full", data=dots)
sns.plt.show() #this was not on site code but tried it(plt.show() as referenced by other posts)
Run Code Online (Sandbox Code Playgroud)
错误信息:
File "<ipython-input-8-893759310442>", line 13, in <module>
sns.relplot(x="time", …Run Code Online (Sandbox Code Playgroud) 我需要以两种方式转动/重塑长格式数据:1)添加日期列(End-of_month)并填写数值(总计)2)添加日期列(End-of_month)并填写日期值(日期)在前一个支点中达到'总'值的月份)
我可以做1:
data = pd.DataFrame({'date': ['1-12-2016', '1-23-2016', '2-23-2016', '2-1-2016', '3-4-2016'],
'EOM': ['1-31-2016', '1-31-2016', '2-28-2016', '2-28-2016', '3-31-2016'],
'country':['uk', 'usa', 'fr','fr','uk'],
'tr_code': [10, 21, 20, 10,12],
'TOTAL': [435, 367,891,1234,231]
})
data['EOM'] = pd.to_datetime(data['EOM'])
data['date'] = pd.to_datetime(data['date'])
data_total = data.pivot_table(values='TOTAL', index=['country','tr_code'], columns='EOM')
Out[73]:
EOM 2016-01-31 2016-02-28 2016-03-31
country tr_code
fr 10 NaN 1234.0 NaN
20 NaN 891.0 NaN
uk 10 435.0 NaN NaN
12 NaN NaN 231.0
usa 21 367.0 NaN NaN
Run Code Online (Sandbox Code Playgroud)
但是,尝试使用'date'更改value参数会产生:DataError:无需聚合的数字类型
我基本上想要两个df - 我完成的那个,以及相同格式的另一个,但不是'TOTAL'值而是完成总计的'date'.
任何帮助是极大的赞赏.