【发布时间】:2021-09-16 19:59:14
【问题描述】:
我有 2 个 csv 文件
file1.csv
,DATE,DAY,OPEN,2PM,CLOSE,STATUS
0,2021-05-18,Tuesday,538.8,530.45,530.8,0
1,2021-05-19,Wednesday,530.65,532.6,536.85,0
2,2021-05-20,Thursday,536.95,537.05,536.35,1
3,2021-05-21,Friday,538.0,538.2,537.55,1
4,2021-05-24,Monday,537.3,535.05,532.85,1
5,2021-05-25,Tuesday,535.9,531.35,529.65,1
6,2021-05-26,Wednesday,532.95,530.55,532.1,0
7,2021-05-27,Thursday,532.95,529.65,529.85,0
file2.csv
,DATE,DAY,OPEN,2PM,CLOSE,STATUS
0,2021-05-18,Tuesday,538.8,530.45,530.8,1
1,2021-05-19,Wednesday,530.65,532.6,536.85,0
2,2021-05-20,Thursday,536.95,537.05,536.35,1
3,2021-05-21,Friday,538.0,538.2,537.55,1
4,2021-05-24,Monday,537.3,535.05,532.85,2
5,2021-05-25,Tuesday,535.9,531.35,529.65,1
6,2021-05-26,Wednesday,532.95,530.55,532.1,0
7,2021-05-27,Thursday,532.95,529.65,529.85,0
file3.csv
,DATE,DAY,OPEN,2PM,CLOSE,STATUS
0,2021-05-18,Tuesday,538.8,530.45,530.9,0
1,2021-05-19,Wednesday,530.65,532.6,536.85,1
2,2021-05-20,Thursday,536.95,537.05,536.35,0
3,2021-05-21,Friday,538.0,538.2,537.55,1
4,2021-05-24,Monday,537.3,535.05,532.85,1
5,2021-05-25,Tuesday,535.9,531.35,529.65,0
6,2021-05-26,Wednesday,532.95,530.55,532.1,0
7,2021-05-27,Thursday,532.95,529.65,529.85,1
可以使用绘制单个 csv 文件的图表
import pandas as pd
df = pd.read_csv("file1.csv")
df.groupby('DAY')['STATUS'].value_counts(normalize=True).unstack().plot.bar()
将情节显示为
这个情节有 5 个 twinBARS(周一、周二、周三等)用于一个文件。
但是,我想在一个图中从所有 3 个文件中绘制“星期一”的数据。谁能告诉我如何处理多个文件?
这意味着,情节将有 3 个双条。每个 TWIN BAR 将代表每个文件中的星期一 例如
Monday from file1.csv
Monday from file2.csv
Monday from file3.csv
我想为所有 3 个文件绘制周一的图表。
【问题讨论】:
-
哪个问题被否决了有什么理由吗?还是仅仅因为不想回答或不知道答案而被否决?
-
我不确定我是否理解你的问题,但也许你可以将这三个文件与
pd.concat([df1, df2, df3])结合起来,最后你会使用你提供的代码? -
Concat 将无法工作,因为我需要星期一将每个文件作为条形而不是合并
-
那么你应该在你的问题中添加更多细节,因为不清楚你想要什么(至少对我来说)
-
@RiccardoBucco 已添加,请兄弟检查。
标签: python python-3.x pandas matplotlib