我想在 R 中滞后整个数据帧。
在Python中,这是很容易做到这一点,利用shift()功能(例如:df.shift(1))
但是,我找不到像shift()R中的 Pandas那样简单易行的方法。
我怎样才能做到这一点?
> x = data.frame(a=c(1,2,3),b=c(4,5,6))
> x
a b
1 1 4
2 2 5
3 3 6
Run Code Online (Sandbox Code Playgroud)
我想要的是,
> lag(x,1)
>
a b
1 NA NA
2 1 4
3 2 5
Run Code Online (Sandbox Code Playgroud)
有什么好主意吗?
我想.csv从网上加载一个文件并将其转换为pandas.DataFrame.
这是我想要查找.csv文件的目标页面:
https://vincentarelbundock.github.io/Rdatasets/datasets.html
如何.csv从网页加载相应项目的文件并转换为panda.DataFrame?
另外,如果我也能从.csv网页上获取文件的地址,那将会很棒.
这将允许我创建一个函数来转换目标页面中的项目名称,这将返回.csv文件地址,如:
def data(item):
file = 'https://vincentarelbundock.github.io/Rdatasets/csv/datasets/'+str(item)+'.csv'
Run Code Online (Sandbox Code Playgroud)
但是,网页中csv文件的地址并不完全相同.
例如,
https://vincentarelbundock.github.io/Rdatasets/csv/Stat2Data/Cuckoo.csv
https://vincentarelbundock.github.io/Rdatasets/csv/datasets/cars.csv
Run Code Online (Sandbox Code Playgroud)
相当多的文件都在不同的目录中,所以我需要搜索"items"并获取相应csv文件的地址.