【发布时间】:2019-07-16 18:15:22
【问题描述】:
我有棒球运动员的数据,想在他们的姓名旁边插入一个新列,其中包含他们各自的学校。我在与数据框对应的列表中有学校名称。我想创建一个循环,一旦第一列到达字符串“Opponents:”,它将转到下一个学校,我需要什么循环来完成这个?
我尝试过使用 and if then else 语句,以及 next 将学校插入列中。
schools <- c("College of Idaho","Aquinas","Avila","Baker")
df$School <- for (i in nrow(df))
if(df$Name!="Opponents:") {
schools[1]
else
next schools
}
我希望我的 df 看起来像这样:
Name School
Van, Austin College of Idaho
Lewis, Payton College of Idaho
....
Opponents: College of Idaho
Overbeek, Alec Aquinas
Haran, Noah Aquinas
【问题讨论】:
-
这似乎不是一个很好的方式来组织您的数据以拥有这样的辅助标题。你能不能只分成一个以上的数据框,比如一支球队和一支对手?还要记住,R 中的许多函数都是矢量化的,所以你可能不需要循环
-
是的,这就是我打算拆分的,谢谢你的澄清。