Excel根据唯一时间戳将多列转换为数据集

2exbekwf  于 2023-01-18  发布在  其他
关注(0)|答案(2)|浏览(144)

我想转换(公式或方式)Excel从一个输出到另一个谷歌Mapcsv上传到Map上绘制数据。例如:原始CSV:

mymaps API的预期输出:

还应注意,该坐标不是恒定的,并且在城市或州内变化。
尝试1)手动,但数据集太大尝试2)文本到列,但仅支持通过分隔符

frebpwbc

frebpwbc1#

F2  =UNIQUE($B$2:$B$20)
G2  =FILTER($C$2:$C$20;($B$2:$B$20=$F2)*($A$2:$A$20=G$1))
H2  =FILTER($C$2:$C$20;($B$2:$B$20=$F2)*($A$2:$A$20=H$1))

kgsdhlau

kgsdhlau2#

使用O365,您可以在E1中尝试以下操作,并可以获得包括标题在内的完整结果:

=LET(id, A2:A5, time, B2:B5, str, C2:C5, idUx, SORT(UNIQUE(id)), 
 timeUx, UNIQUE(time),GET, LAMBDA(tt,ii, XLOOKUP(tt&"|"&ii, time&"|"&id, str)),
 REDUCE(HSTACK("ref_time", TOROW(idUx)), timeUx, LAMBDA(ac,t,
  VSTACK(ac, HSTACK(t, GET(t,INDEX(idUx,1)), GET(t, INDEX(idUx,2)))))))

下面是输出:

检查以下问题,了解如何使用REDUCE/VSTACK模式生成每行:如何将Excel中的表格从垂直转换为水平,但长度不同。我们使用GET用户LAMBDA函数,以避免使用不同的输入重复相同的计算(ttii)。只需更新输入范围名称(idtimestr)来解决您的真实的问题。添加了"|"来连接对多个值的搜索,以避免任何误报。有关详细信息和注解,请查看@JvdV答案。可以避免使用MMULT,但它会生成更详细的公式。由于数据的性质,我认为没有必要,使用分隔符就足够了。

相关问题