我正在使用Cloudera的Hive版本并尝试在包含第一列中的列名的csv文件上创建外部表.这是我用来做的代码.
CREATE EXTERNAL TABLE Test (
RecordId int,
FirstName string,
LastName string
)
ROW FORMAT serde 'com.bizo.hive.serde.csv.CSVSerde'
WITH SerDeProperties (
"separatorChar" = ","
)
STORED AS TEXTFILE
LOCATION '/user/File.csv'
Run Code Online (Sandbox Code Playgroud)
样本数据
RecordId,FirstName,LastName
1,"John","Doe"
2,"Jane","Doe"
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我跳过第一行或者我需要添加一个中间步骤吗?
我有多个文件要加载,并希望将它们连接成 1 个数据框。我正在尝试使用 textConnection,但它运行得很慢。这是我将数据加载到 R 时的样子:
"1995200008,10,1995,5190.61,73300"
"1995200010,1,1995,6776.44,42652"
"1995200011,11,1995,2315.83,4169"
"1995200014,6,1995,9846.79,2113"
"1995200017,8,1995,3978.93,2449"
"1995200018,6,1995,3582.69,2449"
"1995200022,7,1995,10409.18,2859"
Run Code Online (Sandbox Code Playgroud)
我不能使用 read.csv,因为它使用一个库从 Hadoop 中提取数据。双引号在数据中。
这是我正在使用的代码:
tmp <- hdfs.read.text.file(filename)
tmp1 <- read.table(textConnection(tmp), sep = ",")
Run Code Online (Sandbox Code Playgroud)
有谁知道一种可以运行得更快的方法?
我有一些代码可以读入并处理我希望允许多个用户使用的数据,但我不想让他们看到代码.
有没有办法使用R或RStudio做到这一点?