小编bro*_*ues的帖子

熊猫:如何更改列的所有值?

我有一个带有一个列的数据框,"Date"并希望此列中的所有值具有相同的值(仅限年份).例:

City     Date
Paris    01/04/2004
Lisbon   01/09/2004
Madrid   2004
Pekin    31/2004
Run Code Online (Sandbox Code Playgroud)

我想要的是:

City     Date
Paris    2004
Lisbon   2004
Madrid   2004
Pekin    2004
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

fr61_70xls = pd.ExcelFile('AMADEUS FRANCE 1961-1970.xlsx')

#Here we import the individual sheets and clean the sheets    
years=(['1961','1962','1963','1964','1965','1966','1967','1968','1969','1970'])

fr={}

header=(['City','Country','NACE','Cons','Last_year','Op_Rev_EUR_Last_avail_yr','BvD_Indep_Indic','GUO_Name','Legal_status','Date_of_incorporation','Legal_status_date'])

for year in years:
    # save every sheet in variable fr['1961'], fr['1962'] and so on
    fr[year]=fr61_70xls.parse(year,header=0,parse_cols=10)
    fr[year].columns=header
    # drop the entire Legal status date column
    fr[year]=fr[year].drop(['Legal_status_date','Date_of_incorporation'],axis=1)
    # drop every row where GUO Name is empty
    fr[year]=fr[year].dropna(axis=0,how='all',subset=[['GUO_Name']])
    fr[year]=fr[year].set_index(['GUO_Name','Date_of_incorporation']) …
Run Code Online (Sandbox Code Playgroud)

python database pandas

69
推荐指数
3
解决办法
13万
查看次数

R中的尾递归

我似乎误解了尾递归; 根据这个stackoverflow问题, R不支持尾递归.但是,让我们考虑以下函数来计算第n个斐波纳契数:

迭代版本:

Fibo <- function(n){
    a <- 0
    b <- 1
    for (i in 1:n){
        temp <- b
        b <- a
        a <- a + temp
    }
    return(a)
}
Run Code Online (Sandbox Code Playgroud)

"朴素"递归版:

FiboRecur <- function(n){
    if (n == 0 || n == 1){
        return(n)
    } else {
        return(FiboRecur(n-1) + FiboRecur(n-2))
        }
}
Run Code Online (Sandbox Code Playgroud)

最后我发现一个例子应该是尾调用递归:

FiboRecurTail <- function(n){
    fib_help <- function(a, b, n){
        if(n > 0){
            return(fib_help(b, a+b, n-1))
        } else {
            return(a)
        }
    }
    return(fib_help(0, 1, n))
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我们在调用这些函数时查看跟踪,我们得到的是:

Fibo(25) …
Run Code Online (Sandbox Code Playgroud)

recursion r

10
推荐指数
1
解决办法
1215
查看次数

dplyr的过滤功能:如何返回每个值(或"取消"过滤器的效果)?

这可能看起来像一个奇怪的问题,但有没有办法将值传递给filter()基本上什么也没做?

data(cars)
library(dplyr)
cars %>% filter(speed==`magic_value_that_returns_cars?`)
Run Code Online (Sandbox Code Playgroud)

而且你会得到整个数据框cars.我认为这在闪亮的应用程序中很有用,用户只需要选择他想要过滤的值; 例如,用户可以选择"欧洲","非洲"或"美国",并在幕后对数据框进行过滤,然后返回具有"欧洲"描述性统计数据的表格(如果用户选择"欧洲") .但是如果用户想要在没有首先过滤的情况下拥有描述性统计数据呢?是否有一个值可以传递过滤到"取消"过滤器并将整个数据帧传递给summary()?

r data-manipulation dplyr

6
推荐指数
2
解决办法
1295
查看次数

标签 统计

r ×2

data-manipulation ×1

database ×1

dplyr ×1

pandas ×1

python ×1

recursion ×1