Soru sorexcelden çekilen zaman verisinin bozulması
uykusuz009 tarafından 3 yıl önce soruldu

Örneğin, Excel verilerim 00: 11: 41.49'u gösteriyor ve xlsread tarafından dışa aktarıldığında yanıt 0,0081 oluyor. Excel hücresini biçimlendirdiğimde sonuç 0.008119101 oluyor. Matlab'da sonucun 00: 11: 41.49 olmasını istiyorum. Bu işlemi nasıl gerçekleştirebilirim?

10 Cevap
Özgür Yönetici tarafından 3 yıl önce cevaplandı

MATLAB R2019A sürümünden itibaren xlsread komutunun kullanılması tavsiye edilmiyor. Eğer R2019A veya yeni sürüm kullanıyorsanız xlsread komutu yerine alternatif olarak readtable, readmatrix, readcell komutlarını denemenizi tavsiye ederim.

uykusuz009 tarafından 3 yıl önce cevaplandı

Maalesef herhangi bir değişiklik olmuyor. Problem devam ediyor.
 

sayginer Yönetici tarafından 3 yıl önce cevaplandı

"Excel hücresini biçimlendirdiğimde sonuç 0.008119101 oluyor." demişsiniz.
Bu zaten excel hücrenizin asıl değerinin 0.008119101 olduğu anlamına gelmiyor mu?
Daha detaylı anlatır mısınız?
 

uykusuz009 tarafından 3 yıl önce cevaplandı

Excel verim tam olarak 01:39.568 ben excel dosyamı matlaba çektiğim zaman aynı veri 0.0012 haline geliyor yuvarlanmış hali ile yani aslında matlaba çektiğim tablodaki veri tam olarak 0.001152407407407 şeklinde geliyor.

sayginer Yönetici tarafından 3 yıl önce cevaplandı

MATLAB nümerik verinizi okumaya çalışırken hata oluyor. Tüm verilerinizi string olarak çekmek gerekecek. Aşağıdaki örnekteki gibi dener misiniz?

[~,~,RAW]=xlsread('dosyaniz')

RAW değişkeni tüm verinizi ham olarak size döndürecektir.

uykusuz009 tarafından 3 yıl önce cevaplandı

Önerdiğiniz çözümü daha önce ve şimdi yeniden denedim maalesef sonuç aynı. Zaten matlaba eklediğim excel dosyamı görüntülemeye çalıştığımda da değerler aynı şekilde değiştirilmiş görünüyor.

hakkans Yönetici tarafından 3 yıl önce cevaplandı

readtable() komutu ile okuma yaptıktan sonra verinizi table2timetable() fonksiyonu ile dönüştürmeyi denediniz mi? Kast ettiğim:

veri=readtable('dosya.xlsx');
yeniveri=table2timetable(veri);
uykusuz009 tarafından 3 yıl önce cevaplandı

Maalesef şu şekilde hata alıyorum.

untitled
Error using table2timetable (line 59)
Input table must contain datetime or duration vector for row times.
<!– [if mso]>
<![endif]–>
 
Error in untitled (line 2)
yeniveri=table2timetable(veri);
 

hakkans Yönetici tarafından 3 yıl önce cevaplandı

Verinizin sadece zaman kısmını ayrı bir Excel dosyasına atmanız gerekebilir. Öyle denemeniz mümkün mü?

Özgür Yönetici tarafından 3 yıl önce cevaplandı

 
MATLAB tarafında datevec() komutu ile çalışıyor denedim fakat vektör olarak parçalanmış şekilde geliyor bence düzeltmeyi Excel tarafında yapmanız daha kolay olacaktır.