这个示例展示了如何查找、清理和删除缺少数据的表行。
从逗号分隔的文本文件加载示例数据,messy.csv
。文件包含许多不同的缺失数据指示器:
空字符向量(")
句点(.)
NA
南
-99年
属性指定要作为空值处理的字符向量“TreatAsEmpty”
参数的名称-值对readtable
函数。(使用disp
函数显示所有21行,即使在将此示例作为实时脚本运行时也是如此。)
T = readtable (“messy.csv”,“TreatAsEmpty”,{“。”,“NA”});disp (T)
A B C D E ________ __________上_____ {‘afe1}{'是的'}3 3 {‘egh3}南{‘不’}7 7 {‘wth4}{'是的'}3 3 {‘atn2} 23{‘不’}23日23 {‘__arg1}{'是的'}5 5 34.6 {“jre3”}{'是的'}34.6 - 34.6 {‘wen9} 234{'是的'}234 234 {‘ple2}{‘不’}2 2 {‘dbo8}{‘不’}5 5 {‘oii4}{'是的'}5 245 {‘wnk3}{'是的'}245 245 {‘abk6} {0 x0 char} 563 563 563 {‘pnj5} 463{‘不’}463 463 {‘wnn3}{‘不’}6 6 {‘oks9} 23{'是的'}23日23 {‘wba3}南{'是的'}南14 {‘pkn4}{‘不’}2 2{' adw3} 22{‘不’}22 22 {‘poj2} -99{'是的'}-99 -99 {‘bas8} 23{‘不’}23日23 {‘gry5}南{'是的'}南21
T
是一个有21行和5个变量的表。“TreatAsEmpty”
仅应用于文件中的数值列,不能处理指定为文本的数值,例如“-99”
。
属性创建表摘要,查看每个变量的数据类型、描述、单位和其他描述性统计信息总结
函数。
总结(T)
变量:A: 21x1字符向量的单元数组B: 21x1双值:Min -99中位数14 Max 563 C: 21x1字符向量的单元数组D: 21x1双值:Min -99中位数7 Max 563 E: 21x1双值:Min -99中位数14 Max 563
从文件导入数据时,默认为forreadtable
以字符向量的单元格数组形式读取任何具有非数字元素的变量。
显示表中的行子集,T
,至少丢失一个值。
TF = ismissing (T) {''“。”“NA”南-99});rowsWithMissing = T(任何(TF, 2):);disp (rowsWithMissing)
A B C D E {‘egh3} ________ ___ __________幅中国画南{‘不’}7 563 {‘abk6} {0 x0 char} 563 563 {‘wba3}南{'是的'}南-99 {‘poj2}{'是的'}-99 -99 {‘gry5}南{'是的'}南21
readtable
取代“。”
和“NA”
与南
在数值变量中,B
,D
,E
。
清除数据,使缺失的值由代码指示-99年
有标准的MATLAB®数值缺失值指示器,南
。
T = standardizeMissing (T, -99);disp (T)
A B C D E ________ __________上_____ {‘afe1}{'是的'}3 3 {‘egh3}南{‘不’}7 7 {‘wth4}{'是的'}3 3 {‘atn2} 23{‘不’}23日23 {‘__arg1}{'是的'}5 5 34.6 {“jre3”}{'是的'}34.6 - 34.6 {‘wen9} 234{'是的'}234 234 {‘ple2}{‘不’}2 2 {‘dbo8}{‘不’}5 5 {‘oii4}{'是的'}5 245 {‘wnk3}{'是的'}245 245 {‘abk6} {0 x0 char} 563 563 563 {‘pnj5} 463{‘不’}463 463 {‘wnn3}{‘不’}6 6 {‘oks9} 23{'是的'}23日23 {‘wba3}南{'是的'}南14 {‘pkn4}{‘不’}2 2{'adw3'} 22 {'no'} 22 {'poj2'} NaN {'yes'} NaN {'bas8'} 23 {'no'} 23 {'gry5'} NaN {'yes'} NaN 21
standardizeMissing
的三个实例-99年
与南
。
创建一个新表,T2
,并用该表前一行的值替换丢失的值。fillmissing
提供许多方法来填充缺失的值。
T2 = fillmissing (T)“以前”);disp (T2)
A B C D E ________ ____ ____上{‘afe1}{'是的'}3 3 {‘egh3}{‘不’}7 7 {‘wth4}{'是的'}3 3 {‘atn2} 23{‘不’}23日23 {‘__arg1}{'是的'}5 5 {‘jre3} 34.6 34.6 - 34.6{'是的'}{‘wen9} 234{'是的'}234 234 {‘ple2}{‘不’}2 2 {‘dbo8}{‘不’}5 5 {‘oii4}{'是的'}5 245 {‘wnk3}{'是的'}245 245 {‘abk6} 563{'是的'}563 563 {‘pnj5} 463{‘不’}463 463 {‘wnn3}{‘不’}6 6 {‘oks9} 23{'是的'}23 23 {‘wba3} 23{'是的'}23日14 {‘pkn4}{‘不’}2 2 {‘adw3} 22{‘不’}22 22{'poj2'} 22 {'yes'} 22 22 {'bas8'} 23 {'no' } 23 23 {'gry5'} 23 {'yes'} 23 21
创建一个新表,T3
,它只包含来自的行T
没有缺失值。T3
只有16行。
T3 = rmmissing (T);disp (T3)
A B C D E ________ ____ ____上{‘afe1}{'是的'}3 3 {‘wth4}{'是的'}3 3 {‘atn2} 23{‘不’}23日23 {‘__arg1}{'是的'}5 5 34.6 {“jre3”}{'是的'}34.6 - 34.6 {‘wen9} 234{'是的'}234 234 {‘ple2}{‘不’}2 2 {‘dbo8}{‘不’}5 5 {‘oii4}{'是的'}5 245 {‘wnk3}{'是的'}245 245 {‘pnj5} 463{‘不’}463 463 {‘wnn3}{‘不’}6 6 {‘oks9} 23{'是的'}23日23 {‘pkn4}{‘不’}2 2 {‘adw3} 22{‘不’}22 22 {‘bas8} 23{‘不’}23日23
T3
包含16行和5个变量。
对下列行进行排序T3
按降序排列C
,然后按升序排序一个
。
T3 = sortrows (T2, {“C”,“一个”},{“下”,“提升”});disp (T3)
A B C D E ________ ____ ____上{‘abk6} 563{'是的'}563 563 {‘afe1}{'是的'}3 3 {‘__arg1}{'是的'}5 5 {‘gry5} 23{'是的'}23 21 34.6 {‘jre3}{'是的'}34.6 - 34.6 {‘oii4}{'是的'}5 5 {‘oks9} 23{'是的'}23日23 {‘poj2} 22{'是的'}22 22 {‘wba3} 23{'是的'}23 234 {‘wen9}{'是的'}234 234 {‘wnk3} 245{'是的'}245 245 {‘wth4}{'是的'}3 3 {‘adw3} 22{‘不’}22 22 {‘atn2} 23{‘不’}23日23 {‘bas8} 23{‘不’}23日23日{‘dbo8}{‘不’}5 5 {‘egh3} 3{‘不’}7 7 {‘pkn4} 2{‘不’}2 2 {‘ple2}{‘不’}2 463 {‘pnj5}{‘不’}463 463 {‘wnn3}{‘不’}6 6
在C
,先将行分组“是的”
,紧随其后的是“不”
。然后在一个
,行按字母顺序排列。
重新排序表,以便一个
和C
彼此紧挨着。
T3 = T3 (:, {“一个”,“C”,“B”,' D ',“E”});disp (T3)
C B D E ________ ____ ____上{‘abk6}{'是的'}563 563 563 {‘afe1}{'是的'}3 3 3 {‘__arg1}{'是的'}5 5 5 {‘gry5}{'是的'}23日23日21日{‘jre3}{'是的'}34.6 34.6 34.6 {‘oii4}{'是的'}5 5 5 {‘oks9}{'是的'}23日23日23日{‘poj2}{'是的'}22 22 22 {‘wba3}{'是的'}23日23日14 {‘wen9}{'是的'}234 234 234 {‘wnk3}{'是的'}245 245 245 {‘wth4}{'是的'}3 3 3 {‘adw3}{‘不’}22 22 22 {‘atn2}{‘不’}23日23日23 {‘bas8}{‘不’}23日23日23日{‘dbo8}{‘不’}5 5 5 {‘egh3}{‘不’}3 7 7 {‘pkn4}{‘不’}22 2 {‘ple2}{‘不’}2 2 2 {‘pnj5}{‘不’}463 463 463 {‘wnn3}{‘不’}6 6 6
fillmissing
|ismissing
|readtable
|rmmissing
|sortrows
|standardizeMissing
|总结