我有3个不同的列表,分别为:“ pos_date_data”,“ neu_date_data”,“ neg_date_data”。(分别表示积极,中立和消极)
它们包含数据框形状的日期时间值。
下面是打印列表时的外观。并且每个都有不同的长度。
datetime
0 2018-07-04
1 2018-07-04
2 2018-07-04
3 2018-07-04
4 2018-07-04
.. ...
212 2020-02-02
213 2020-02-02
214 2020-02-03
215 2020-02-04
216 2020-02-07
[217 rows x 1 columns]
datetime
0 2018-07-04
1 2018-07-04
2 2018-07-04
3 2018-07-04
4 2018-07-04
... ...
1527 2020-02-09
1528 2020-02-10
1529 2020-02-11
1530 2020-02-11
1531 2020-02-12
[1532 rows x 1 columns]
[从它们,我正在尝试使用熊猫,python将它们合并到一个DataFrame中。
为此,我必须按日期在整个范围(2018-07〜2020.03)中计算月份。例如 :如果neu_date_data中2019-05的总日期数为15,我想在表中将其显示为整数。
我尝试过此代码:
df = pd.crosstab(neg_date_data['datetime'].dt.month.rename('m'),
neg_date_data['datetime'].dt.year.rename('y'))
并打印为:以交叉表的形式显示,每个项目代表以月为单位的日期数。
y 2018 2019 2020
m
1 0 1 17
2 0 0 2
3 0 1 0
4 0 3 0
5 0 12 0
6 0 13 0
7 25 16 0
8 0 36 0
9 0 2 0
10 1 8 0
11 1 5 0
12 2 4 0
我想用3种方式修复代码:
合并3个列表并显示一次。
具有完整的'年'和'月'数据作为列。
for 3 rows >>,每个列表的标题:'pos','neu','neg',而不是年份。
我有3个不同的列表,分别为:“ pos_date_data”,“ neu_date_data”,“ neg_date_data”。 (分别表示正数,中性和负数),它们包含数据框形状的日期时间值。下面是他们的方式...
用途: