借助API,我们可以创建一个空的Sheet文件,然后将其填充为CSV数据。 在我的CSV数据中,字符串用双引号(“)引起来。 在这些数据中,有条形码,例如“ 0212345678901”。 在工作表文件中,字符串0212345678901的数字已转换,因此前0消失了……这是不正确的。 在CSV文件中,如果字符串用双引号引起来,则应保留字符串……
我的数据分两步导入:
我使用API创建一个新的空工作表文件。 API返回创建的文件ID。
mar()
body:
boxplot(
as.numeric(UEC$Q1_1)[3:21],
as.numeric(UEC$Q1_2)[3:21],
as.numeric(UEC$Q1_3)[3:21],
as.numeric(UEC$Q1_4)[3:21],
as.numeric(UEC$Q1_5)[3:21],
as.numeric(UEC$Q1_6)[3:21],
as.numeric(UEC$Q1_7)[3:21],
as.numeric(UEC$Q1_8)[3:21],
as.numeric(UEC$Q1_9)[3:21],
as.numeric(UEC$Q1_10)[3:21],
as.numeric(UEC$Q1_11)[3:21],
as.numeric(UEC$Q1_12)[3:21],
as.numeric(UEC$Q1_13)[3:21],
as.numeric(UEC$Q1_14)[3:21],
as.numeric(UEC$Q1_15)[3:21],
as.numeric(UEC$Q1_16)[3:21],
as.numeric(UEC$Q1_17)[3:21],
as.numeric(UEC$Q1_18)[3:21],
as.numeric(UEC$Q1_19)[3:21],
as.numeric(UEC$Q1_20)[3:21],
as.numeric(UEC$Q1_21)[3:21],
as.numeric(UEC$Q1_22)[3:21],
as.numeric(UEC$Q1_23)[3:21],
as.numeric(UEC$Q1_24)[3:21],
as.numeric(UEC$Q1_25)[3:21],
as.numeric(UEC$Q1_26)[3:21],
main="UEC Questions",
names=c("annoying/enjoyable", "not understandable/understandable", "creative/dull", "easy to learn/difficult to learn", "valuable/inferior", "boring/exciting", "not interesting/interesting", "unpredictable/predictable", "fast/slow", "inventive/conventional", "obstructive/supportive", "good/bad", "complicated/easy", "unlikable/pleasing", "usual/leading edge", "unpleasant/pleasant", "secure/not secure", "motivating/demotivating", "meets expectations/does not meet expectations", "inefficient/efficient", "clear/confusing", "impractical/practical", "organized/cluttered", "attractive/unattractive", "friendly/unfriendly", "conservative/innovative"),
las=2,
mar=c(5.1, 4.1, 4.1, 2.1)
)
我使用先前返回的ID更新文件(通过PATCH REST调用)。内容是我的CSV数据。
https://www.googleapis.com/drive/v3/files
所以,我有两个问题: 1:可以禁用智能转换吗? 2:或者,是否有一种方法可以指定字符串必须保留为字符串(例如在Excel中,如果我们以简单的引号'开头的公式)?
样品:
{
'name': 'aFilename',
'mimeType': 'application/vnd.google-apps.spreadsheet',
'parents': [idFolder]
}
答案 0 :(得分:1)
这些修改如何?您遇到的情况有3种模式。我认为有几个答案。因此,请将此视为其中之一。
在此模式中,通过在CSV数据中添加撇号,可以将其用作字符串值。请在CSV数据中添加撇号,并使用修改后的CSV文件更新电子表格。我认为这是这三种模式中最简单的。
"21/12/2018 17:04:28","'0212345005507",1
或
"21/12/2018 17:04:28",'0212345005507,1
在这种模式下,Sheets API中的sheets.values.update方法用于创建的电子表格。
终点:PUT https://sheets.googleapis.com/v4/spreadsheets/### spreadsheetId ###/values/### sheetName ###?valueInputOption=RAW
要求正文:
{
"values": [
[
"21/12/2018 17:02:06",
"0212345005507",
"1"
]
]
}
在此模式下,将使用Sheets API中的电子表格.create方法。在这种情况下,可以通过一个API调用来创建电子表格和放置值。
终点:POST https://sheets.googleapis.com/v4/spreadsheets
要求正文:
{
"sheets": [
{
"data": [
{
"rowData": [
{
"values": [
{
"userEnteredValue": {
"stringValue": "21/12/2018 17:02:06"
}
},
{
"userEnteredValue": {
"stringValue": "0212345005507"
}
},
{
"userEnteredValue": {
"numberValue": 1
}
}
]
}
]
}
]
}
],
"properties": {
"title": "### filename of spreadsheet ###"
}
}
0212345005507
的值。当您看到该单元格时,它就是'0212345005507
。如果这些不是您想要的结果,对不起。