如何将包含数值和文本的 CSV 文件导入 MATLAB 工作区?


CSV 或逗号分隔值是一种可以存储数值和文本值的 ​​文件格式。CSV 文件最重要的特性是可以实现在各种来源之间交换数据。

MATLAB 是一款强大的工具,它提供了大量的内置函数来执行各种操作。它提供了以下两个函数,使用户能够将包含数值和文本值的 CSV 文件中的数据导入到 MATLAB 工作区。

  • readtable()

  • importdata()

在本教程中,我将向您展示使用这些函数将数据从 CSV 文件导入 MATLAB 工作区的过程。

使用 readtable() 函数导入数据

在 MATLAB 中,“readtable”函数是其函数库中的内置函数。此函数用于将包含文本和数值的数据导入到 MATLAB 工作区。

语法

data = readtable(file_path);

下面解释了将包含数值和文本的 CSV 文件中的数据导入 MATLAB 工作区的步骤。

  • 步骤 (1) - 读取 CSV 文件并将其存储在变量中。

  • 步骤 (2) - 指定变量名。

  • 步骤 (3) - 调用“readtable”函数从 CSV 文件导入数据。

  • 步骤 (4) - 显示导入的数据。

我们可以按照这四个简单的步骤将数据从 CSV 文件导入 MATLAB 工作区。

示例

让我们来看一个例子来理解这些步骤在 MATLAB 编程中的实现。

% MATLAB code to create a sample CSV file

% Create a sample table with numeric and text data
course_data = table([101; 102; 103; 104; 105; 106; 107;], {'Math'; 'Physics'; 'Chemistry'; 'MATLAB'; 'Electronics'; 'C++'; 'Java';}, [1000; 1500; 1200; 1500; 450; 700; 600], 'VariableNames', {'CourseID', 'CourseName', 'Fee'});

% Specify the name for the CSV file
file_name = 'course_data.csv';

% Write the table to the CSV file
writetable(course_data, file_name);

% Display the confirmation message and table
disp('The CSV file has been created successfully.');
disp(course_data);

输出

它将创建一个包含以下数据的 CSV 文件:

The CSV file has been created successfully.

    CourseID      CourseName       Fee 
    ________    _______________    ____

      101       {'Math'       }    1000
      102       {'Physics'    }    1500
      103       {'Chemistry'  }    1200
      104       {'MATLAB'     }    1500
      105       {'Electronics'}     450
      106       {'C++'        }     700
      107       {'Java'       }     600

现在,让我们实现代码,将此 CSV 文件中的数值和文本数据导入到工作区。

示例

% Import data from CSV file into workspace using readtable function
% Specify the file path to the CSV file
file_path = '/MATLAB Drive/course_data.csv';	% Replace with your CSV file path

% Call the readtable function to import data from the CSV file
data = readtable(file_path);

% Display the imported data
disp('This CSV file contains the following data.');
disp(data);

输出

运行此代码时,将产生以下输出

This CSV file contains the following data.

    CourseID      CourseName       Fee 
    ________    _______________    ____

      101       {'Math'       }    1000
      102       {'Physics'    }    1500
      103       {'Chemistry'  }    1200
      104       {'MATLAB'     }    1500
      105       {'Electronics'}     450
      106       {'C++'        }     700
      107       {'Java'       }     600

此示例演示了如何使用“readtable”函数将数据从 CSV 文件导入 MATLAB 工作区。

让我们看看另一种将包含数值和文本的 CSV 文件中的数据导入 MATLAB 工作区的方法。

使用 importdata() 函数导入数据

在 MATLAB 中,“importdata”函数是 MATLAB 函数库中的另一个内置函数。这可以用来将数值和文本数据从 CSV 文件导入到 MATLAB 工作区。

语法

data = importdata(file_path, delimiter);

下面解释了使用“importdata”函数将数值和文本数据从 CSV 文件导入工作区的步骤。

  • 步骤 (1) - 读取 CSV 文件并将其存储在变量中。

  • 步骤 (2) - 调用“importdata”函数以访问 CSV 文件中的数据。

  • 步骤 (3) - 读取并显示列标题。

  • 步骤 (4) - 读取并显示 CSV 文件中的文本数据。

  • 步骤 (5) - 读取并显示 CSV 文件中的数值数据。

示例

让我们来看一个例子来在 MATLAB 编程中实现这些步骤。

% Import data from CSV file into workspace using importdata function
% Specify the file path to the CSV file
file_path = '/MATLAB Drive/course_data.csv'; % Replace with your CSV file path

% Call the importdata function to read the CSV file
data = importdata(file_path);

% Read and display the text data
text_data = data.textdata;
disp('Text Data:');
disp(text_data);

% Read and display the numeric data
numeric_data = data.data;
disp('Numeric Data:');
disp(numeric_data);

输出

运行此代码时,将产生以下输出

Text Data:
    {'CourseID'}    {'CourseName' }    {'Fee'   }   Numeric Data:
    {'101'     }    {'Math'       }      {0×0 char}           1000
    {'102'     }    {'Physics'    }      {0×0 char}           1500
    {'103'     }    {'Chemistry'  }      {0×0 char}           1200
    {'104'     }    {'MATLAB'     }      {0×0 char}           1500
    {'105'     }    {'Electronics'}      {0×0 char}            450
    {'106'     }    {'C++'        }      {0×0 char}            700
    {'107'     }    {'Java'       }      {0×0 char}            600


在这个例子中,我演示了如何使用“importdata”函数将数值和文本数据从 CSV 文件导入 MATLAB 工作区。

结论

总之,将包含数值和文本的 CSV 文件中的数据导入工作区是 MATLAB 中一项基本且至关重要的操作。CSV 文件用于存储逗号分隔的值。

在本教程中,我解释了使用 MATLAB 中的两个内置函数将数值和文本数据从 CSV 文件导入工作区的步骤。这些函数是“readtable”和“importdata”。您可以尝试使用不同的 CSV 文件(替换文件路径)来运行这些 MATLAB 代码。

更新于:2023年10月6日

浏览量:315

启动您的 职业生涯

完成课程获得认证

开始
广告