Dot indexing is not supported for variables of this type.
    1 view (last 30 days)
  
       Show older comments
    
    Özgür Alaydin
 on 2 Oct 2020
  
    
    
    
    
    Commented: Özgür Alaydin
 on 5 Oct 2020
            I have a csv file. in the function, this file should be read and then processed.
But i get error 'Dot indexing is not supported for variables of this type.'
How can i solve this? I attached my csv file.
Thnaks
3 Comments
  Utkarsh Belwal
    
 on 5 Oct 2020
				I think that you are using the dot(.) operator instead of a multiplication operator(*). Please share your code if this doesn't resolve the error.
  Walter Roberson
      
      
 on 5 Oct 2020
				There is text part way through the file. If you were not sufficiently careful in reading it you might have ended up with an empty variable where you expect a struct.
Accepted Answer
  Luciano Garim
 on 5 Oct 2020
        Hi, Özgür Alaydin.
To fix your problem you may transform your csv data in matrix. This way, you can make any mathematical operation.
a = fopen('filename.csv');
b = textscan(a, '%s %s %s %s', 'delimiter', ',', 'CollectOutput',true);
I hope I helped you!
2 Comments
  Walter Roberson
      
      
 on 5 Oct 2020
				That would be a bit strange. 
Lines 1 and 503 of the input file contain text. Lines 2 to 501 and 504 to 1003 contain two numeric values per line. 
When you use the above code to read the file, you will get results like
    {'wl'        }    {'n'         }    {0×0 char}    {0×0 char}
    {'2.0664e-01'}    {'1.0648e+00'}    {0×0 char}    {0×0 char}
    {'2.0705e-01'}    {'1.0667e+00'}    {0×0 char}    {0×0 char}
    {'2.0746e-01'}    {'1.0686e+00'}    {0×0 char}    {0×0 char}
and eventually
    {'1.2398e+01'}    {'3.1390e+00'}    {0×0 char}    {0×0 char}
    {'wl'        }    {'k'         }    {0×0 char}    {0×0 char}
    {'2.0664e-01'}    {'2.2263e+00'}    {0×0 char}    {0×0 char}
    {'2.0705e-01'}    {'2.2310e+00'}    {0×0 char}    {0×0 char}
This would not be well suited for numeric processing.
If you are going to read the data as text you might as well use fileread() and techniques such as regexp() to parse the text.
More Answers (0)
See Also
Categories
				Find more on Matrix Indexing in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



