'Pandas dataframe dosen't recognize values in list

I have a list that looks something like this:

[   deptht  depthb  clay  silt  sand    OM  bulk_density   pH  sat_hidric_cond
 0      89     152   NaN   NaN   NaN   NaN           NaN  NaN         0.000074
 1       0      25  0.20  0.72  0.08  2.00          1.30  5.8         0.000917
 2      25      89  0.34  0.58  0.08  0.25          1.48  5.0         0.000091,
     deptht  depthb  clay  silt  sand   OM  bulk_density   pH  sat_hidric_cond
 29       0      25  0.07  0.12  0.81  3.0          1.20  6.3           0.0055
 32      25      44  0.05  0.11  0.84  1.7          1.20  6.1           0.0055
 41      44      70  0.04  0.08  0.88  0.6          1.58  6.4           0.0055
 50      70     203  0.02  0.03  0.95  0.3          1.60  7.2           0.0055,
     deptht  depthb   clay   silt   sand    OM  bulk_density   pH  \
 6      157     203  0.335  0.323  0.342  0.25          1.90  7.9   
 8        0      25  0.225  0.527  0.248  2.00          1.40  6.2   
 9       25      66  0.420  0.502  0.078  0.75          1.53  6.5   
 12      66     109  0.240  0.518  0.242  0.25          1.53  7.5   
 15     109     157  0.240  0.560  0.200  0.25          1.45  7.9   
 
     sat_hidric_cond  
 6          0.000074  
 8          0.000917  
 9          0.000282  
 12         0.000776  
 15         0.000776  ,
    deptht  depthb   clay   silt   sand    OM  bulk_density   pH  \
 0      71     109  0.100  0.234  0.666  0.25          1.68  5.8   
 1     109     152  0.100  0.265  0.635  0.25          1.70  8.2   
 3       0      23  0.085  0.237  0.678  2.00          1.45  6.2   
 4      23      71  0.210  0.184  0.606  0.25          1.55  5.5   
 
    sat_hidric_cond  
 0           0.0023  
 1           0.0023  
 3           0.0028  
 4           0.0009  ,
    deptht  depthb  clay   silt   sand    OM  bulk_density   pH  \
 3       0      25  0.11  0.230  0.660  0.75          1.55  7.2   
 4      25      76  0.14  0.192  0.668  0.25          1.55  7.2   
 6      76     152  0.14  0.556  0.304  0.00          1.75  8.2   
 
    sat_hidric_cond  
 3         0.002800  
 4         0.002800  
 6         0.000091  ]

when I try to transform my list into a DataFrame with soil = pd.DataFrame(data) I get this output

                                                   0
0     deptht  depthb  clay  silt  sand    OM  bul...
1      deptht  depthb  clay  silt  sand   OM  bul...
2      deptht  depthb   clay   silt   sand    OM ...
3     deptht  depthb   clay   silt   sand    OM  ...
4     deptht  depthb  clay   silt   sand    OM  b...

Those are the five elements of my list but is not recognizing the values associated to each variable.

However when I use the squeeze function soil = soil.iloc[1].squeeze() I get something similar to what I want as result:

deptht  depthb  clay  silt  sand   OM  bulk_density   pH  sat_hidric_cond
29       0      25  0.07  0.12  0.81  3.0          1.20  6.3           0.0055
32      25      44  0.05  0.11  0.84  1.7          1.20  6.1           0.0055
41      44      70  0.04  0.08  0.88  0.6          1.58  6.4           0.0055
50      70     203  0.02  0.03  0.95  0.3          1.60  7.2           0.0055

But I have to use the iloc function to individually select each element of the list. What I'm looking for is a method that I can apply to the whole list and get an output like I get when I use the pandas squeeze method. Any help is greatly appreciated.

Thank you very much.



Solution 1:[1]

data is a list and it seems you want to extract the second element of the list:

soil = pd.DataFrame(data[1])

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Corralien