[英]Multiplication of column doesn't work as expected pandas
我有下面的代码,我正在接近创建一个新列,它存储“日期”(6:7 是月份位置)与“拥有的总股票”的乘积。
import matplotlib as plt
import pandas as pd
data = pd.read_csv("C:\\users\\Hp\\Documents\\Datascience task\\Stock.csv")
data = data.rename(columns={'Stock': 'Total Stock Owned'})
date = data['Date'].str[6:7]
stock = data['Total Stock Owned']
data['Incremenet of stock based on month'] = date * stock
data
这是 output (我删除了一些列以摆脱混乱):
Total Stock Owned Date Incremenet of stock based on month
0 5 1989-02-10 03:45:29 22222
1 3 2003-06-17 06:46:02 666
2 8 1982-01-23 12:32:18 1111111
3 8 2016-04-06 07:29:44 44444444
4 8 2010-05-29 09:43:25 55555555
5 8 1982-08-20 11:33:26 88888888
6 3 1994-04-16 16:21:16 444
7 9 1985-02-21 13:29:34 222222222
8 8 2005-04-10 03:13:01 44444444
9 2 1998-03-23 22:31:06 33
Output 我预计:
Total Stock Owned Date Incremenet of stock based on month
0 5 1989-02-10 03:45:29 10
1 3 2003-06-17 06:46:02 18
2 8 1982-01-23 12:32:18 8
3 8 2016-04-06 07:29:44 32
4 8 2010-05-29 09:43:25 40
5 8 1982-08-20 11:33:26 64
6 3 1994-04-16 16:21:16 12
7 9 1985-02-21 13:29:34 18
8 8 2005-04-10 03:13:01 32
9 2 1998-03-23 22:31:06 6
如何修复“基于月份的库存增量”中的大数字?
您忘记转换为 int:
date = data['Date'].str[6:7].astype(int)
Output:
date = data['Date'].str[6:7].astype(int)
stock = data['Total Stock Owned']
data['Incremenet of stock based on month'] = date * stock
print(data)
Total Stock Owned Date Incremenet of stock based on month
0 5 1989-02-10 03:45:29 10
1 3 2003-06-17 06:46:02 18
2 8 1982-01-23 12:32:18 8
3 8 2016-04-06 07:29:44 32
4 8 2010-05-29 09:43:25 40
5 8 1982-08-20 11:33:26 64
6 3 1994-04-16 16:21:16 12
7 9 1985-02-21 13:29:34 18
8 8 2005-04-10 03:13:01 32
9 2 1998-03-23 22:31:06 6
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.