如何将由不规则、混合格式的数据和混合分隔符组成的csv文件加载到数据帧中



我尝试了许多其他线程推荐的方法,但未能使代码正常工作。

所以。。。我想把如下排列的csv文件加载到数据帧中。

year, 2021
month, march
date, 28
here, are, values
42.1, 28.7, 27.0, 9.54, 12.23, 22.25

我很难处理这个csv文件(实际上这只是我的一个简明例子(,因为这些数据的不规则性、字母和数字的混合格式以及逗号和空格的混合分隔符。

我希望这个数据集在数据帧中左对齐,比如

year  2021  NaN    NaN  NaN   NaN
month march NaN    NaN  NaN   NaN
date  28    NaN    NaN  NaN   NaN
here  are   values NaN  NaN   NaN
42.1  28.7  27.0   9.54 12.23 22.25

很抱歉,我无法向您展示到目前为止我所做的工作,因为我有一堆来自我搜索的方法的代码版本。

如果所有values都引用相同的yearmonthdate,则需要有一个DataFrame,其中每一行都是value的观测值,即

year = 2021
month = 'march'
date = 28
values = [42.1, 28.7, 27.0, 9.54, 12.23, 22.25]
df = pd.DataFrame({
'year': np.repeat(year, len(values)),
'month': np.repeat(month, len(values)),
'date': np.repeat(date, len(values)),
'value': values
})

产生

year  month  date  value
0  2021  march    28  42.10
1  2021  march    28  28.70
2  2021  march    28  27.00
3  2021  march    28   9.54
4  2021  march    28  12.23
5  2021  march    28  22.25

如果你想把它转置,你可以做

df = df.T

提供

0      1      2      3      4      5
year    2021   2021   2021   2021   2021   2021
month  march  march  march  march  march  march
date      28     28     28     28     28     28
value   42.1   28.7   27.0   9.54  12.23  22.25

最新更新