Я хотел бы взять значения из фрейма данных и вставить их в текстовую строку, которую можно использовать в качестве запроса sql. В SAS я бы сделал это
proc sql noprint; Select Names into :names separated by ", " from df; quit;
это создаст переменную &name, в которой будут храниться все имена. Например: идентификатор, имя, учетная запись. Я хотел бы сделать то же самое в R, но не знаю, как это сделать. Я могу создать вектор с именами, разделенными запятыми, и каждое из них окружено кавычками, я могу убрать кавычки с помощью функции noquote и поместить их в вектор, но я не могу получить элементы в другом операторе вставки, чтобы добавить «ВЫБРАТЬ " и из. Я не могу заставить его все вставить. Есть ли способ вытащить значения из столбца и создать текстовую строку, которую можно использовать в качестве SQL-запроса внутри R? Вот что я пробовал в R:
name = c("Id", "IsDeleted", "Name", "Credit__Loan__c")
label = c("Record Id", "Deleted", "ID", "Loan")
df = data.frame(name, label)
names(df) <- c("name", "label")
as.query.fields = noquote(paste(df$name, collaspe=", "))
as.query.final <- paste("SELECT " , noquote(paste(df$name, collaspe=", ")), " id FROM Credit_Amortization_Schedule__c")
whisker
илиbrew
будут здесь полезны. - person ctbrown   schedule 29.10.2014collapse
написано неправильно (у тебяcollaspe
), и это влияет на конечный результат. Вам не нужна функцияnoquote
(она влияет только на способ печати объектов), и вы можете передать объектas.query.final
непосредственно в вызовеsqlQuery
(или подобных функций) для выполнения запроса. - person nicola   schedule 30.10.2014