R-通过复制元素/列在数据框中创建条件列

R-通过复制元素/列在数据框中创建条件列,r,dataframe,R,Dataframe,我有这张桌子(所有的足球比赛都来自希腊联赛,其中一支球队在后面获胜-ht) 我想创建一个新的专栏,我们叫它tempWinner,它的名字是winner。我使用下面的公式,它使用excel的rational,不幸的是未能给出正确的结果。我搜索了如何使用条件“复制”单元格,但找不到任何相关内容 anatropes$tempWinner <- ifelse (anatropes$FTR == "H", anatropes$HomeTeam , anatropes$AwayTeam) 我的方法没

我有这张桌子(所有的足球比赛都来自希腊联赛,其中一支球队在后面获胜-ht)

我想创建一个新的专栏,我们叫它tempWinner,它的名字是winner。我使用下面的公式,它使用excel的rational,不幸的是未能给出正确的结果。我搜索了如何使用条件“复制”单元格,但找不到任何相关内容

anatropes$tempWinner <- ifelse (anatropes$FTR == "H", anatropes$HomeTeam , anatropes$AwayTeam)
我的方法没有错误,我只得到以下数据帧:

> anatropes
        Date         HomeTeam         AwayTeam FTHG FTAG FTR HTHG HTAG HTR
8   24/08/15      Panetolikos    Panathinaikos    1    2   A    1    0   H
16  31/08/15        Platanias        Atromitos    1    2   A    1    0   H
40  28/09/15            Veria              AEK    1    2   A    1    0   H
42  03/10/15     Panthrakikos      Levadeiakos    1    3   A    1    0   H
68  01/11/15 Asteras Tripolis             PAOK    2    1   H    0    1   A
97  05/12/15 Asteras Tripolis          Iraklis    1    2   A    1    0   H
120 21/12/15              AEK      Levadeiakos    1    2   A    1    0   H
138 17/01/16 Asteras Tripolis         Kallonis    3    1   H    0    1   A
196 06/03/16     Panthrakikos             PAOK    2    1   H    0    1   A
203 13/03/16        Atromitos Asteras Tripolis    2    1   H    0    1   A
233 17/04/16 Asteras Tripolis            Veria    2    1   H    0    1   A
    tempWinner
8           10
16           4
40           2
42           8
68           3
97           6
120          8
138          3
196         13
203          4
233          3

正如@Sotos建议的那样-使用
as.character()
,因为HomeTeam和AwayTeam都是因素。您得到的是级别的id,而不是字符串值

您得到了什么错误?另外请显示
str(anatropes)
可能您有一些因素。尝试
ifelse(df$FTR=='H',as.character(df$HomeTeam),as.character(df$AwayTeam))
Yup。您有很多因素。@所以您是对的,我没有注意到您使用了df而不是我的实际数据帧名称,并且您的代码返回了错误。尤克萨里斯托
'data.frame':   11 obs. of  9 variables:
 $ Date    : Factor w/ 85 levels "","01/11/15",..: 67 84 75 7 2 12 57 41 14 32 ...
 $ HomeTeam: Factor w/ 17 levels "","AEK","Asteras Tripolis",..: 11 15 16 13 3 3 2 3 13 4 ...
 $ AwayTeam: Factor w/ 17 levels "","AEK","Asteras Tripolis",..: 10 4 2 8 14 6 8 7 14 3 ...
 $ FTHG    : int  1 1 1 1 2 1 1 3 2 2 ...
 $ FTAG    : int  2 2 2 3 1 2 2 1 1 1 ...
 $ FTR     : Factor w/ 4 levels "","A","D","H": 2 2 2 2 4 2 2 4 4 4 ...
 $ HTHG    : int  1 1 1 1 0 1 1 0 0 0 ...
 $ HTAG    : int  0 0 0 0 1 0 0 1 1 1 ...
 $ HTR     : Factor w/ 4 levels "","A","D","H": 4 4 4 4 2 4 4 2 2 2 ...
> anatropes
        Date         HomeTeam         AwayTeam FTHG FTAG FTR HTHG HTAG HTR
8   24/08/15      Panetolikos    Panathinaikos    1    2   A    1    0   H
16  31/08/15        Platanias        Atromitos    1    2   A    1    0   H
40  28/09/15            Veria              AEK    1    2   A    1    0   H
42  03/10/15     Panthrakikos      Levadeiakos    1    3   A    1    0   H
68  01/11/15 Asteras Tripolis             PAOK    2    1   H    0    1   A
97  05/12/15 Asteras Tripolis          Iraklis    1    2   A    1    0   H
120 21/12/15              AEK      Levadeiakos    1    2   A    1    0   H
138 17/01/16 Asteras Tripolis         Kallonis    3    1   H    0    1   A
196 06/03/16     Panthrakikos             PAOK    2    1   H    0    1   A
203 13/03/16        Atromitos Asteras Tripolis    2    1   H    0    1   A
233 17/04/16 Asteras Tripolis            Veria    2    1   H    0    1   A
    tempWinner
8           10
16           4
40           2
42           8
68           3
97           6
120          8
138          3
196         13
203          4
233          3