私は以下のpandas DataFrameを持っています。パンダ:単一のデータフレームから複数の時系列を1つのプロットにプロットする方法は?
import pandas as pd
df = pd.read_csv('filename.csv')
print(df)
time Group blocks
0 1 A 4
1 2 A 7
2 3 A 12
3 4 A 17
4 5 A 21
5 6 A 26
6 7 A 33
7 8 A 39
8 9 A 48
9 10 A 59
.... .... ....
36 35 A 231
37 1 B 1
38 2 B 1.5
39 3 B 3
40 4 B 5
41 5 B 6
.... .... ....
911 35 Z 349
これはmin=1
からmax=35
への複数の時系列風データとデータフレームです。各Group
には、このような時系列があります。
私は個々の時系列AからZまでを1から35のx軸に対してプロットしたいと思います.Y軸は毎回blocks
になります。
私は、アンドリュース曲線プロットのようなものを使用するのでは互いに対して、各系列をプロットしますhttp://pandas.pydata.org/pandas-docs/stable/visualization.html
を考えていました。各「色相」は異なるグループに設定されます。 (他のアイデアを歓迎します)
私の問題:このデータフレームをどのようにフォーマットして複数のシリーズをプロットするのですか?列はGroupA
、GroupB
などですか?
どのようにデータフレームは、形式にするのですか:示されているよう
time GroupA blocksA GroupsB blocksB GroupsC blocksC....
が、これはアンドリュースプロットの正しい形式ですか?
EDIT
私がしようとした場合:
df.groupby('Group').plot(legend=False)
x軸は完全に間違っています。すべての時系列は0から35までプロットする必要があります。
どのように私はこの問題を解決するのですか?
あなたは、グループに必要な値をマークしなければならないデータフレームに 'andrews_curves'を呼び出すこと。列 'Group'でグループ化するには' andrews_curves(df、 'Group') 'を試してください。 – Serenity
@Serenityこれは混乱です。 x軸は1から35までではなく、y軸は何か分かりません。どのようにこれを変更するのですか? – ShanZhengYang
Andrewsのカーブは[-pi; +πである。 http://fedc.wiwi.hu-berlin.de/xplore/tutorials/mvahtmlnode9.html – Serenity