У меня есть массив ячеек с 22 столбцами. Я хочу прочитать массив ячеек и разделить его на разные файлы .mat на основе столбца 2 (сайт в строковом формате). По сути, данные содержат информацию за один год для сайтов по всему Нью-Йорку. Я хочу сохранить данные для каждого сайта отдельно (найти строки с одинаковым столбцом 2 и сохранить их).
Я также хотел бы преобразовать файл .mat в файл netcdf, чтобы люди, которые не используют MATLAB, также могли его прочитать, но сначала мне просто нужно иметь возможность разделить массив ячеек без ручного поиска каждой конкретной строки и сохранения Это.
Данные находятся в этом файле: https://www.dropbox.com/sh/li3hh1nvt11vok5/4YGfwStQlo а>
Я использую этот скрипт для чтения файла, а затем сортирую его по дате (столбец 1):
filename = ('PM2.5_NY_2012.csv'); % PM2.5 88101 data from NY in the year 2012
% Use functions created by read_mixed_csv.m to read in
data = read_mixed_csv(filename,','); % Creates cell array of data
data = regexprep(data, '^"|"$',''); % Gets rid of double quotes at the start and end of the string
% Sort data based on date (Column 1)
[Y,I] = sort(data(:,1)); % Create 1st column sorted
site_sorted = data(I,:); % Sort the entire array
Итак, теперь это массив ячеек. Как я могу сохранить все данные с одним и тем же вторым столбцом в другой файл? Было бы полезно использовать «уникальный» или «найти»? Я знаю, как это сделать, выполнив поиск определенной строки и сохранив все, у кого есть эта строка, но, поскольку сайтов много, есть ли способ автоматизировать это?
Будет ли работать уникальное использование для создания списка имен файлов, а затем циклическое создание файла с использованием этого списка? Я все еще относительно новичок в программировании, поэтому я не знаю, что я могу сделать.
36-061-0079
или какой-то другой столбец? - person chappjc   schedule 04.10.2013