Matlab 在数据集中搜索名称错误:未定义函数';等式';对于类型为';单元格';
我加载了一个文件,其中有一些数据列。第一行包含,CITY,YEAR2000 第一列包含城市名称。其他列包含数字数据 我正在尝试使用以下工具搜索特定城市:Matlab 在数据集中搜索名称错误:未定义函数';等式';对于类型为';单元格';,matlab,Matlab,我加载了一个文件,其中有一些数据列。第一行包含,CITY,YEAR2000 第一列包含城市名称。其他列包含数字数据 我正在尝试使用以下工具搜索特定城市: data(data.CITY=='Athens',3:end) 在哪里 data=dataset('File'、'cities.txt'、'Delimiter'、'、')) 但是我收到一个错误 Undefined function 'eq' for input arguments of type 'cell'. --------更新----
data(data.CITY=='Athens',3:end)
在哪里
data=dataset('File'、'cities.txt'、'Delimiter'、'、'))
但是我收到一个错误
Undefined function 'eq' for input arguments of type 'cell'.
--------更新-----------------------------
好的,使用:
data(find(strncmp(data.CITY,'Athens',length('Athens'))),3:end)
您是否尝试过将
strncmp
与find
混为一谈
我会这样使用它
find(strncmp(data.CITY,'ATHENS',length('ATHENS')))
编辑
其他可利用的机会包括strfind
strfind(data.CITY,'ATHENS')
编辑2
你也可以试着用它
data(ismember(data.CITY,'ATHENS'),3:end)
这会让你得到你期望的结果(至少我想是这样)
编辑3
考虑到您上次的请求,我会选择以下解决方案:
inp = input('Name of the CITY: ','s')
Name of the City: ATHENS
data(find(strncmp(data.CITY,inp,length(inp))),3:end)
您是否安装了统计工具箱?如果您执行
帮助数据集
,您会得到什么?@Eitan T:我更新了。是的,我得到了帮助:以及我将如何使用它来显示第3列:结束?:好的,我计算出来了。非常感谢!:如果可以,请再来一个。我正在从用户输入中获取城市名称。city=输入(…),然后尝试执行“数据(查找(strncmp(data.city,'city',length('city')),3:end)”,但我收到一个空单元格。我该怎么做?谢谢:好的,非常感谢!我只是想使用“数据。城市,评估(输入)”:抱歉再次打扰!最后一个!从现在的用户输入中,我收到的是年份,但作为字符串,因为我必须使用“Y2000”。因此,要么尝试“data.eval('year')”,要么“data(find)(strncmp(data.CITY.inp,length(inp)))”),它不起作用。它的工作原理类似于“data.Y200”。这就是我正在尝试完成的。