我有一个data包含以下交易数据的Pandas DataFrame :
A date
0 M000833 2016-08-01
1 M000833 2016-08-01
2 M000833 2016-08-02
3 M000833 2016-08-02
4 M000511 2016-08-05
Run Code Online (Sandbox Code Playgroud)
我想要一个新列,其中包含每个消费者的访问次数(每天多次访问应视为 1)。
所以我试过这个:
import pandas as pd
data['noofvisits'] = data.groupby(['A'])['date'].nunique()
Run Code Online (Sandbox Code Playgroud)
当我只运行该语句而不将其分配给 DataFrame 时,我会得到一个具有所需输出的 Pandas 系列。但是,上述语句导致:
A date noofvisits
0 M000833 2016-08-01 NaN
1 M000833 2016-08-01 NaN
2 M000833 2016-08-02 NaN
3 M000833 2016-08-02 NaN
4 M000511 2016-08-05 NaN
Run Code Online (Sandbox Code Playgroud)
预期的输出是:
A date noofvisits
0 M000833 2016-08-01 2
1 M000833 2016-08-01 2
2 M000833 2016-08-02 2
3 M000833 2016-08-02 2 …Run Code Online (Sandbox Code Playgroud) 我有以下curl要求:
curl --request GET --header "key: value" http://urlhere
Run Code Online (Sandbox Code Playgroud)
如何在 R 中运行请求?
我有一个计算时间太长的脚本,我正在尝试并行化其执行。
该脚本基本上循环遍历数据帧的每一行并执行一些计算,如下所示:
my.df = data.frame(id=1:9,value=11:19)
sumPrevious <- function(df,df.id){
sum(df[df$id<=df.id,"value"])
}
for(i in 1:nrow(my.df)){
print(sumPrevious(my.df,my.df[i,"id"]))
}
Run Code Online (Sandbox Code Playgroud)
我开始学习在 R 中并行化代码,这就是为什么我首先想了解如何使用类似 apply 的函数(例如 sapply、lapply、mapply)来做到这一点。
我尝试了多种方法,但到目前为止没有任何效果:
mapply(sumPrevious,my.df,my.df$id) # Error in df$id : $ operator is invalid for atomic vectors
Run Code Online (Sandbox Code Playgroud) 我有一个pandas DataFrame这样的:
df = pd.DataFrame({'custid':[1,2,3,4],
...: 'prod1':['jeans','tshirt','jacket','tshirt'],
...: 'prod1_hnode1':[1,2,3,2],
...: 'prod1_hnode2':[6,7,8,7],
...: 'prod2':['tshirt','jeans','jacket','shirt'],
...: 'prod2_hnode1':[2,1,3,4],
...: 'prod2_hnode2':[7,6,8,7]})
In [54]: df
Out[54]:
custid prod1 prod1_hnode1 prod1_hnode2 prod2 prod2_hnode1 \
0 1 jeans 1 6 tshirt 2
1 2 tshirt 2 7 jeans 1
2 3 jacket 3 8 jacket 3
3 4 tshirt 2 7 shirt 4
prod2_hnode2
0 7
1 6
2 8
3 7
Run Code Online (Sandbox Code Playgroud)
如何将其转换为以下格式:
dfnew = pd.DataFrame({'custid':[1,1,2,2,3,3,4,4],
...: 'prod':['prod1','prod2','prod1','prod2','prod1','prod2','prod1','prod2'],
...: 'rec':['jeans','tshirt','tshirt','jeans','jacket','jacket','tshirt','shirt'],
...: 'hnode1':[1,2,2,1,3,3,2,4],
...: 'hnode2':[6,7,7,6,8,8,7,7]})
In …Run Code Online (Sandbox Code Playgroud) 我有一个包含5个不同长度数据框的列表。我想将这些数据框写在同一张Excel工作表中。
我已经尝试使用WriteXLS(),write.xlsx()但无法获得理想的结果。
我有一个列表,其中包含各种长度的多个向量(总共80个).在x轴上我想要这些矢量的名称.在y轴上,我想绘制对应于每个向量的值.我怎么能在R?