이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.
mdfRead
설명
는 지정된 MDF 파일에서 모든 채널의 모든 데이터를 읽고, 그 출력을 셀 배열 data = mdfRead(mdfFileName)data에 할당합니다. 출력 셀 배열은 반환된 데이터의 각 채널 그룹에 대한 타임테이블을 포함하며, 여기서 셀 배열 인덱스는 반환된 채널 그룹의 순서를 나타냅니다.
는 이름-값 인수를 통해 특정 채널 및 채널 그룹을 필터링하고, 메타데이터를 요청하며, 기타 옵션을 적용할 수 있게 합니다.data = mdfRead(___,Name=Value)
예제
MDF 파일에서 사용 가능한 모든 데이터를 읽습니다.
data = mdfRead("VehicleData.mf4"); head(data{1}) % First timetable in returned cell array.
time EngineRPM Brake Throttle Gear ImpellerTorque OutputTorque TransmissionRPM VehicleSpeed
________ _________ _____ ________ ____ ______________ ____________ _______________ ____________
0 sec 1000 0 60 1 52.919 282.65 0 0
0.04 sec 1383.3 0 59.946 1 101.4 532.63 13.593 0.30047
0.08 sec 1685.4 0 59.893 1 150.76 776.41 35.847 0.7924
0.12 sec 1907.2 0 59.839 1 193.42 973.15 65.768 1.4538
0.16 sec 2062 0 59.785 1 227.02 1117.6 101.53 2.2443
0.2 sec 2161.2 0 59.732 1 251.11 1212.8 141.45 3.1268
0.24 sec 2221.4 0 59.678 1 267.24 1264.3 183.86 4.0644
0.28 sec 2257.2 0 59.624 1 276.35 1271.2 227.25 5.0234
변환 규칙을 적용하지 않고 원시 데이터를 읽습니다.
dataraw = mdfRead("VehicleData.mf4",ReadRaw=true);지정된 채널 이름에 대해 MDF 파일에서 사용 가능한 모든 데이터를 읽습니다.
data = mdfRead("VehicleData.mf4",Channel=["*Torque" "*Rate"]);
인덱스를 사용하여 시작점과 끝점을 지정하여 MDF 파일에서 데이터 범위를 읽습니다.
data = mdfRead("VehicleData.mf4",IndexRange=[65,128]);지정된 시간 범위에 걸쳐 MDF 파일에서 데이터의 범위를 읽습니다.
data = mdfRead("VehicleData.mf4",TimeRange=seconds([0,30]));mdfChannelInfo 함수로 식별된 채널에서 데이터를 읽습니다.
채널 테이블을 가져와서 채널의 이름과 그룹 번호를 표시합니다.
chanInfoTable = mdfChannelInfo("VehicleData.mf4",Channel=["*Torque","*Speed"]); chanInfoTable(:,1:3) % Partial display.
ans =
3×3 table
Name GroupNumber GroupNumSamples
________________ ___________ _______________
"ImpellerTorque" 1 751
"OutputTorque" 1 751
"VehicleSpeed" 1 751지정된 채널에서 데이터를 읽습니다.
data = mdfRead("VehicleData.mf4",Channel=chanInfoTable); head(data{1}) % View top of data timetable.
time ImpellerTorque OutputTorque VehicleSpeed
________ ______________ ____________ ____________
0 sec 52.919 282.65 0
0.04 sec 101.4 532.63 0.30047
0.08 sec 150.76 776.41 0.7924
0.12 sec 193.42 973.15 1.4538
0.16 sec 227.02 1117.6 2.2443
0.2 sec 251.11 1212.8 3.1268
0.24 sec 267.24 1264.3 4.0644
0.28 sec 276.35 1271.2 5.0234MDF 파일에서 채널 그룹 메타데이터 및 채널 메타데이터와 함께 데이터를 타임테이블로 읽어옵니다.
MDF 파일의 메타데이터를 포함한 모든 데이터를 읽은 후, 첫 번째 채널 그룹의 메타데이터를 확인합니다.
dataGrp1 = mdfRead("VehicleData.mf4",IncludeMetadata=true);
dataGrp1{1}.Properties.CustomPropertiesans =
CustomProperties with properties:
ChannelGroupAcquisitionName: ""
ChannelGroupComment: "Simulation of an automatic transmission controller during passing maneuver."
ChannelGroupSourceName: ""
ChannelGroupSourcePath: ""
ChannelGroupSourceComment: ""
ChannelGroupSourceType: Unspecified
ChannelGroupSourceBusType: Unspecified
ChannelGroupSourceBusChannelNumber: 0
ChannelDisplayName: ["" "" "" "" "" "" "" ""]
ChannelComment: ["" "" "" "" "" "" "" ""]
ChannelUnit: ["rpm" "ft*lbf" "%" "" "ft*lbf" "ft*lbf" "rpm" "mph"]
ChannelType: [FixedLength FixedLength FixedLength FixedLength FixedLength FixedLength … ]
ChannelDataType: [RealLittleEndian IntegerUnsignedLittleEndian RealLittleEndian … ]
ChannelNumBits: [64 8 64 8 64 64 64 64]
ChannelComponentType: [None None None None None None None None]
ChannelCompositionType: [None None None None None None None None]
ChannelSourceName: ["" "" "" "" "" "" "" ""]
ChannelSourcePath: ["" "" "" "" "" "" "" ""]
ChannelSourceComment: ["" "" "" "" "" "" "" ""]
ChannelSourceType: [Unspecified Unspecified Unspecified Unspecified Unspecified Unspecified … ]
ChannelSourceBusType: [Unspecified Unspecified Unspecified Unspecified Unspecified Unspecified … ]
ChannelSourceBusChannelNumber: [0 0 0 0 0 0 0 0]
ChannelReadOption: [All All All All All All All All]입력 인수
MDF 파일 이름으로, 문자열 또는 문자형 벡터로 지정되며 필요한 전체 경로 또는 상대 경로를 포함합니다. URL을 사용하여 원격 서버에 있는 파일을 지정할 수 있습니다.
액세스하는 위치에 따라 mdfFileName는 다음과 같은 형태를 취할 수 있습니다.
위치 | 형식 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| 현재 폴더 또는 MATLAB® 경로 | 현재 폴더 또는 MATLAB 경로에 있는 파일에 액세스하려면, 파일 확장자를 포함하여 예: | ||||||||
다른 폴더들 | 현재 폴더가 아닌 다른 폴더에 있는 파일에 액세스하려면 예: 예: | ||||||||
원격지 | 원격 위치의 파일에 액세스하려면,
원격 위치에 기반하여,
자세한 내용은 원격 데이터로 작업하기 항목을 참조하십시오. 예: |
데이터형: string | char
이름-값 인수
선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.
R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name을 따옴표로 묶으십시오.
예: GroupNumber=2
채널 그룹 번호. 하나의 그룹에 대해서는 숫자 스칼라로, 여러 그룹에 대해서는 숫자 벡터로 지정됩니다. 이 함수는 지정된 채널 그룹에서만 발견된 채널의 데이터를 반환합니다. 지정되지 않은 경우, 모든 채널 그룹의 데이터가 반환됩니다.
예: GroupNumber=[1,2]
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
데이터를 반환할 채널 이름으로, 문자열 또는 문자열로 구성된 배열, 문자형 벡터 또는 문자형 벡터로 구성된 셀 배열로 지정됩니다. 여러 채널 이름 중 하나와 일치시키려면 배열을 사용하십시오. 와일드카드는 부분 일치를 허용합니다. 지정되지 않은 경우 모든 채널의 데이터가 반환됩니다.
mdfChannelInfo 함수로 생성된 테이블을 사용하여 채널을 지정할 수도 있습니다. 테이블을 사용하여 채널을 지정할 때 GroupNumber 옵션은 무시됩니다.
예: Channel=["*Rate","*Speed"]
데이터형: string | char | cell | table
true 또는 false로 지정된 절대적 타임스탬프를 반환합니다. true가 지정된 경우, 반환된 타임테이블은 datetime 형식의 절대적 타임스탬프를 가집니다. false가 지정된 경우, 반환된 타임테이블은 파일의 초기 타임스탬프로부터 경과된 상대적 타임스탬프를 포함합니다. 디폴트 값은 false로, 상대적 타임스탬프를 반환합니다.
예: AbsoluteTime=true
데이터형: logical
데이터를 읽을 구간의 시작 시간과 종료 시간으로, 2개 요소 벡터로 지정됩니다. AbsoluteTime=true인 경우, TimeRange를 datetime형 벡터로 지정하십시오. AbsoluteTime=false (기본값)인 경우, duration형 벡터로 TimeRange를 지정하십시오. 지정되지 않은 경우, 모든 데이터 샘플이 읽힙니다. 이 옵션은 IndexRange와 함께 사용할 수 없습니다.
예: TimeRange=seconds([0,60])
데이터형: datetime | duration
데이터를 읽을 구간의 시작 인덱스와 끝 인덱스로, 2개 요소 벡터로 지정됩니다. 인덱스는 포괄적입니다. 지정되지 않은 경우, 모든 데이터 샘플이 읽힙니다. 이 옵션은 TimeRange와 함께 사용할 수 없습니다.
예: IndexRange=[65:128]
데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
true 또는 false로 지정된 원시 데이터 값을 읽습니다. true로 지정된 경우 데이터는 원시 값으로 읽힙니다. false로 지정된 경우 데이터는 물리적 값으로 읽힙니다. 디폴트 값은 false입니다.
예: ReadRaw=true
데이터형: logical
결과에 채널 그룹 메타데이터와 채널 메타데이터를 포함시키되, true 또는 false로 지정합니다. true인 경우, 메타데이터가 반환된 각 타임테이블에 사용자 지정 속성으로 추가됩니다. 메타데이터는 비어 있지 않은 출력 타임테이블에만 포함됩니다. false인 경우 메타데이터가 포함되지 않습니다. 디폴트 값은 false입니다.
mdfRead가 각 채널 그룹에 대해 타임테이블을 반환하기 때문에, 이 채널 그룹 및 해당 그룹 내 모든 채널의 메타데이터가 타임테이블에 사용자 지정 속성으로 추가됩니다. 타임테이블의 tt 사용자 지정 속성에 tt.Properties.CustomProperties에서 액세스할 수 있습니다.
mdfRead 함수는 메타데이터가 포함될 때 실행 시간이 더 오래 걸립니다.
예: IncludeMetadata=true
데이터형: logical
각 채널 그룹 출력 타임테이블에 이벤트 테이블을 연결합니다. 지정된 형식은 true 또는 false입니다. true (기본값)일 때, 이 함수는 각 타임테이블 출력에 이벤트테이블을 연결하며, 이는 반환된 타임테이블의 속성에서 tt.Properties.Events로 액세스할 수 있습니다.
자세한 내용은 예제 Work with MDF Events를 참조하십시오.
예: IncludeEvents=false
데이터형: logical
MDF 파일에서 유효성 데이터를 읽기 위한 지시사항으로, 다음 문자열 값 중 하나로 지정됩니다:
"include"(기본값) — 유효성 데이터를 읽고 반환된 타임테이블의 사용자 지정 속성인tt.Properties.CustomProperties.Validity에 저장합니다."ignore"— 유효성 데이터를 읽지 마십시오."replace"— 유효성 데이터를 읽고 모든 무효 샘플을 MATLABmissing값으로 대체합니다. 잘못된 샘플을 포함하는 모든 정수 채널은 double형으로 변환됩니다.
자세한 내용은 예제 Read Validity Data from MDF Files를 참조하십시오.
예: ValidityRule="replace"
데이터형: char | string
출력 인수
채널 데이터를 각 그룹별 타임테이블이 포함된 timetable형으로 구성된 셀형 배열로 반환합니다.
제한 사항
mdfRead는 3차원 이상의 Array 채널을 지원하지 않습니다.중첩된 채널 구성에서 읽기는 지원되지 않습니다. 단순 구조 채널이나 Array 채널에서는 읽을 수 있지만, 복합 신호의 구조체나 배열에서는 읽을 수 없습니다.
mdfRead는 부분 변환 규칙이 적용된 채널에서 읽기를 지원하지 않습니다.
버전 내역
R2023a에 개발됨mdfRead는 이제 다음 이름-값 인수를 받아들입니다:
문자열 값을 갖는
ValidityRule.로직 값을 갖는
IncludeEvents.
원격 위치에 저장된 MDF 파일 데이터에 직접 액세스할 수 있습니다. 여기에는 Amazon S3, Azure® Blob Storage 및 HDFS가 포함됩니다.
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)