我在这个小的测试数据帧中有一个for循环打印值。
USA Finland China Sweden
1 1 3 5.505962 8.310596
2 2 4 11.033347 5.425747
3 3 5 14.932882 3.272544
4 4 6 10.155517 5.980190
5 5 7 11.020148 3.692313
Total 0 0 0.000000 0.000000
此行打印出数据帧中的一行:
print(countries[2,])
结果如下:
USA Finland China Sweden
2 2 4 11.03335 5.425747
基于此,我想我可以在for循环中执行相同操作并打印出所有行。循环代码:
for (i in countries[1,])
{
print(countries[i,])
}
然而,这导致仅打印出的每一行都没有意义。我得到的结果是:
USA Finland China Sweden
1 1 3 5.505962 8.310596
USA Finland China Sweden
3 3 5 14.93288 3.272544
USA Finland China Sweden
5 5 7 11.02015 3.692313
USA Finland China Sweden
NA NA NA NA NA
什么可能导致这种情况发生?我正在使用R studio,那么控制台日志记录是否能跟上这些价值呢?
答案 0 :(得分:1)
@lmo评论建议解决方案。我想你想知道为什么会发生这种情况,所以我会试着回答这个问题。
您正在使用此代码:
var searchView: MaterialSearchView? = null
val toolbar: Toolbar = view.findViewById(R.id.toolbar) as Toolbar
在行1: for (i in countries[1,])
2: {
3: print(countries[i,])
4: }
中,您正在选择1
将使用的值向量。此向量恰好是数据的第一行:i
。它转换为向量1 3 5.505962 8.310596
- 作为索引。
因此,在行c(1,3,5,8)
中,您正在打印行3
(因为您选择了索引)。它是随机的,甚至是行,但我希望你能更好地理解它。
当然,您应该使用1, 3, 5, 8
或df[1:5,]
代替print(df)
。