在matlab中从csv数据集生成点

在matlab中从csv数据集生成点,matlab,csv,Matlab,Csv,我有一个csv文件,如下所示: Title, Longitude, Latitude Photo1, 77.94, 20.665 Photo2, 62.508, 36.548 Photo3, 39.64, 52.547 Photo4, 39.6435, 52.77 Photo5, 70.642, 20.547 经度和纬度是拍摄每张照片的坐标。现在,我需要从文件中生成点,然后用不同的算法对它们进行聚类 我试过这个: T = readtable('testdata.csv','Format','%

我有一个csv文件,如下所示:

Title, Longitude, Latitude
Photo1, 77.94, 20.665
Photo2, 62.508, 36.548
Photo3, 39.64, 52.547
Photo4, 39.6435, 52.77
Photo5, 70.642, 20.547
经度和纬度是拍摄每张照片的坐标。现在,我需要从文件中生成点,然后用不同的算法对它们进行聚类

我试过这个:

T = readtable('testdata.csv','Format','%s%f%f')

x = T(:, 2);
y = T(:, 3);

lon=[x,0];
lat=[0,y];

data = [lon lat];

在散射函数中使用lon,lat,但看起来我完全错了。如果有人能帮助我,那就太好了。很抱歉问这个愚蠢的问题,但我对matlab完全是新手。

函数要求两个向量作为点坐标。因此,我认为您需要的是:

scatter(x, y);

问题中定义了
x
y

如果
T
持有文件中的表格,那么
data=T(2:end,2:3)
不是你想要的吗?还有一件事-
lon=[x,0]
应该会给您一个错误,因为
x
是一个列向量,
x
0
的维度不匹配。谢谢您的帮助!改变x=T(:,2);y=T(:,3);到x=T{,2};y=T{:,3};我的计划现在看来还不错。我知道lon=[x,0];是完全错误的,但我用它作为最后一次尝试,我只是删除了这两行。data=T(2:end,2:3)是我想要的,但由于某种原因,当我在聚类函数中传递数据作为参数时,它不起作用。我已经更改了散点函数,我的图现在是正确的,但是我需要计算从这些点到核的距离,这就是为什么我需要数据数组,正如你所说的data=T(2:end,2:3)。但是,当我在内核函数中以参数形式传递数据时,我得到了一个错误。@simpleman91-您应该用使您产生问题的确切行来更新您的问题(这个内核函数是什么,您如何调用它)。现在,问题中没有足够的信息。尽管我们正在讨论,欢迎来到SO,并确保您阅读了常见问题解答。很抱歉,您是对的。我没有更新这个问题,因为我认为导致错误的只是这部分代码和我写这些行的方式,这就是为什么我要求正确的方式来写它们。后来我意识到了真正的问题。我在代码的其余部分发现了错误并更正了它,现在一切正常。非常感谢你的帮助。