[英]How do I get the sum of years from date column in reference to each ticker?(Pandas)
我有一個看起來像下面的數據框:
Date Open High Low Close Symbol
1990-11-05 3.88 4.25 3.25 4.25 WIKI/DDD
1990-11-06 3.50 4.25 3.50 3.62 WIKI/DDD
1991-11-07 3.50 4.00 3.50 4.00 WIKI/DDD
1990-11-08 4.00 4.00 3.75 4.00 WIKI/DDD
2017-11-09 4.00 4.00 3.50 3.50 WIKI/DDD
1990-11-05 3.88 4.25 3.25 4.25 WIKI/AAPL
1990-11-06 3.50 4.25 3.50 3.62 WIKI/AAPL
1995-11-07 3.50 4.00 3.50 4.00 WIKI/AAPL
1995-11-08 4.00 4.00 3.75 4.00 WIKI/AAPL
2017-11-09 4.00 4.00 3.50 3.50 WIKI/AAPL
我正在嘗試建立一個新的列,求和並給我每家公司交易的年數。
Date Open High Low Close Symbol Yrs_Publ_Trd
1990-11-05 3.88 4.25 3.25 4.25 WIKI/DDD 34
1990-11-06 3.50 4.25 3.50 3.62 WIKI/DDD 34
1991-11-07 3.50 4.00 3.50 4.00 WIKI/DDD 34
1990-11-08 4.00 4.00 3.75 4.00 WIKI/DDD 34
2017-11-09 4.00 4.00 3.50 3.50 WIKI/DDD 34
1990-11-05 3.88 4.25 3.25 4.25 WIKI/AAPL 28
1990-11-06 3.50 4.25 3.50 3.62 WIKI/AAPL 28
1995-11-07 3.50 4.00 3.50 4.00 WIKI/AAPL 28
1995-11-08 4.00 4.00 3.75 4.00 WIKI/AAPL 28
2017-11-09 4.00 4.00 3.50 3.50 WIKI/AAPL 28
我的日期列是(datetime64 [ns])
我嘗試使用:
for i in mydata.groupby('Symbol').Date.size():
print(mydata.Date.dt.year.max() -mydata.Date.dt.year.min())
和這個:
for i in np.unique(mydata.Symbol):
print(mydata.Date.dt.year.max() -mydata.Date.dt.year.min())
我認為您需要為新列進行transform
:
mydata['Yrs_Publ_Trd'] = (mydata.groupby('Symbol').Date
.transform(lambda x: x.dt.year.max() - x.dt.year.min()))
另一個解決方案:
g = mydata['Date'].dt.year.groupby(mydata['Symbol'])
mydata['Yrs_Publ_Trd'] = g.transform('max') - g.transform('min')
print (mydata)
Date Open High Low Close Symbol Yrs_Publ_Trd
0 1990-11-05 3.88 4.25 3.25 4.25 WIKI/DDD 27
1 1990-11-06 3.50 4.25 3.50 3.62 WIKI/DDD 27
2 1991-11-07 3.50 4.00 3.50 4.00 WIKI/DDD 27
3 1990-11-08 4.00 4.00 3.75 4.00 WIKI/DDD 27
4 2017-11-09 4.00 4.00 3.50 3.50 WIKI/DDD 27
5 1990-11-05 3.88 4.25 3.25 4.25 WIKI/AAPL 27
6 1990-11-06 3.50 4.25 3.50 3.62 WIKI/AAPL 27
7 1995-11-07 3.50 4.00 3.50 4.00 WIKI/AAPL 27
8 1995-11-08 4.00 4.00 3.75 4.00 WIKI/AAPL 27
9 2017-11-09 4.00 4.00 3.50 3.50 WIKI/AAPL 27
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.