我有这样的数据,例如,
>rows
ID NAME AGE ADDRESS SALARY
1 1 Paul 32 California 20000
2 2 Allen 25 Texas 15000
3 3 Teddy 23 Norway 20000
4 4 Mark 25 Rich-Mond 65000
5 5 David 27 Texas 85000
6 6 Kim 22 South-Hall 45000
Run Code Online (Sandbox Code Playgroud)
并且仅在名称列中获取数据,
> rows[2]
NAME
1 Paul
2 Allen
3 Teddy
4 Mark
5 David
6 Kim
Run Code Online (Sandbox Code Playgroud)
我想把它们加入一个字符串,
> paste(rows[2],collapse=" ")
Run Code Online (Sandbox Code Playgroud)
结果,
[1] c("Paul", "Allen", "Teddy", "Mark", "David", "Kim")
Run Code Online (Sandbox Code Playgroud)
但这就是我所追求的,
Paul Allen Teddy Mark David Kim
Run Code Online (Sandbox Code Playgroud)
可能吗?
整个代码,
# Load package.
library("RSQLite")
# Load package.
library("sqldf")
# Load package.
library("tcltk")
# Connect to the sqlite file.
# Localhost.
DB <- dbConnect(SQLite(), dbname = "C:/../sqldf/testDB.sqlite3")
# Fetch all records in the table.
users <- dbGetQuery(
DB,
"SELECT *
FROM users"
)
# SQL statements can be run by using the sql methods provided by sqlContext
rows <- sqldf("SELECT * FROM users")
png(filename="temp.png", width=500, height=500)
plot(1, 1, col = "white")
text(1, 1, paste(rows[2], collapse = ' '))
dev.off()
Run Code Online (Sandbox Code Playgroud)
我们也可以使用
paste(rows[,2], collapse=' ')
Run Code Online (Sandbox Code Playgroud)
要么
paste(rows[[2]], collapse=' ')
Run Code Online (Sandbox Code Playgroud)
或者正如@Frank所提到的,我们可以使用任一列提取列的名称 $
paste(rows$NAME, collapse=' ')
Run Code Online (Sandbox Code Playgroud)
要么 [[
paste(rows[['NAME']], collapse=' ')
Run Code Online (Sandbox Code Playgroud)
因为以上所有都是提取列,因为vectorwhile rows[2]仍然是data.frame.我们可以使用strie str(rows[2])和来检查差异str(rows[[2]]).有关更多信息,我们可以查看?Extract或?'['
| 归档时间: |
|
| 查看次数: |
66 次 |
| 最近记录: |