从 Google 表格中提取坐标。 int float 的问题切断了一切。我怎样才能通过实数?

Posted

技术标签:

【中文标题】从 Google 表格中提取坐标。 int float 的问题切断了一切。我怎样才能通过实数?【英文标题】:Pulling coordinates from Google Sheets. issues with int float cutting everything off. How can I pass as real number? 【发布时间】:2020-06-21 15:10:31 【问题描述】:

这会从 Google 表格的两列中打印出我的纬度和经度:

x1 = [item for item in wks.col_values(3) if item]
for item in x1[1:]:
    print(item)

x2 = [item for item in wks.col_values(4) if item]
for item in x2[1:]:
    print(item)

latitude_list = int(x1[1])
longitude_list = int(x2[1])


gmap3 = gmplot.GoogleMapPlotter(31.203993, -71.67483, 9)

gmap3.heatmap(latitude_list, longitude_list)

结果:

ValueError: invalid literal for int() with base 10: '31.203993'

这是在我尝试将 int 应用于 int(x1[1]) 之后...我尝试像这样添加浮点数:

int(float(x1[1]))

但后来我的坐标被截断为前两个数字......所以它只有 -71 或 31。如何将这个列表从 Google 表格传递到 gmplot?

编辑:这就是我从 Google 表格中检索数据的方式:

credentials = ServiceAccountCredentials.from_json_keyfile_name('x.json', scope)
gc = gspread.authorize(credentials)
wks = gc.open("x").worksheet("x")

x1 = [item1 for item1 in wks.col_values(3) if item1]
for item1 in x1[1:]:
    print(item1)
    print(Decimal(item1))

【问题讨论】:

您能发一份您的工作表样本吗?您如何检索 Google 表格中的值? 添加检索方法进行编辑 【参考方案1】:

我没有使用过 gmplot,但尝试传递 decimalfloat 值。

int 值不能有片段,因为int 只能表示整数。

参数必须是decimal 或float

【讨论】:

浮动不起作用。尝试十进制:json.decoder.JSONDecodeError: Expecting value: line 1 column 2 (char 1) 。 :头痛: 小数部分可以工作,但现在我面临这个问题:TypeError: 'decimal.Decimal' object is not iterable >>> 该错误通常表明传入的值应该是列表或数组,但您发送的是单个值。在这种情况下,我认为一个方法需要一个十进制值列表,而不是单个值。 我对 gmplot 很感兴趣,所以我去了 github 存储库并查看了代码。 github.com/gmplot/gmplot/blob/… 看起来它需要一个元组列表。 元组列表...好的。我将开始研究如何将我的 Google Sheet 字符串列表转换为元组列表。谢谢!

以上是关于从 Google 表格中提取坐标。 int float 的问题切断了一切。我怎样才能通过实数?的主要内容,如果未能解决你的问题,请参考以下文章

从第一张表格中提取信息时如何更新其他Google表格?

如何在Google表格中获取某些值后如何进行正则表达式提取

如何在 Google Apps 脚本中使用 Cheerio 提取 HTML 表格数据(雅虎财经)?

使用 PHP 从 ATOM 提要中提取数据并使用它反向查找坐标到实际地址

从Txt,PDf,Google云端硬盘中的Doc文件中提取电子邮件地址

text 只需单击按钮或预定时间,即可将数据从MySQL数据库提取到Google doc电子表格。这对re来说非常有用