У меня не получается четкая таблица. Пожалуйста, помогите. Мои данные:
0 2017 IX 2018 X 2018 X 2018 X 2018 0 2017 IX 2018 X 2018 X 2018 X 2018
0 2017 IX 2018 0 2017 IX 2018
UKUPNO 1.053 1.075 1.093 103,8 101,7 1.633 1.669 1.701 104,2 101,9
A Poljoprivreda, šumarstvo i ribolov 907 888 925 102,0 104,2 1.394 1.356 1.420 101,9 104,7
B Vađenje ruda i kamena 913 919 839 91,9 91,3 1.395 1.406 1.297 93,0 92,2
C Prerađivačka industrija 769 764 775 100,8 101,4 1.176 1.169 1.187 100,9 101,5
D Proizvodnja i snabdijevanje 1.574 1.570 1.647 104,6 104,9 2.459 2.455 2.579 104,9 105,1
električnom energijom, plinom,
parom i klimatizacija
Я использую этот код:
df = pd.read_fwf(io.StringIO(t), header=None, skiprows=1)
И я получаю вывод, который мне нужно очистить... Например, я получаю столбец D, разделенный на три столбца:
D Proizvodnja i snabdijevanje 1.574 1.570 1.647 104,6 104,9 2.459 2.455 2.579 104,9 105,1
13 NaN električnom energijom, plinom, NaN NaN NaN NaN NaN NaN NaN NaN
14 NaN parom i klimatizacija NaN NaN NaN NaN NaN NaN NaN NaN
Извините, я имею в виду ряд.






Проблема только с D-строкой, текст которой разбит на 3 строки? Если это так, вы можете сделать:
s = """
0 2017 IX 2018 X 2018 X 2018 X 2018 0 2017 IX 2018 X 2018 X 2018 X 2018
0 2017 IX 2018 0 2017 IX 2018
UKUPNO 1.053 1.075 1.093 103,8 101,7 1.633 1.669 1.701 104,2 101,9
A Poljoprivreda, šumarstvo i ribolov 907 888 925 102,0 104,2 1.394 1.356 1.420 101,9 104,7
B Vađenje ruda i kamena 913 919 839 91,9 91,3 1.395 1.406 1.297 93,0 92,2
C Prerađivačka industrija 769 764 775 100,8 101,4 1.176 1.169 1.187 100,9 101,5
D Proizvodnja i snabdijevanje 1.574 1.570 1.647 104,6 104,9 2.459 2.455 2.579 104,9 105,1
električnom energijom, plinom,
parom i klimatizacija
"""
df = pd.read_fwf(pd.compat.StringIO(s), header=None, skiprows=5)
df[0] = df[0].ffill()
df[1] = df[0].map(df[1].groupby(df[0]).agg(lambda x: ' '.join(x)))
df = df.dropna(axis=0)
df
Выход:
0 1 2 3 4 5 6 7 8 9 10 11
0 A Poljoprivreda, šumarstvo i ribolov 907.000 888.00 925.000 102,0 104,2 1.394 1.356 1.420 101,9 104,7
1 B Vađenje ruda i kamena 913.000 919.00 839.000 91,9 91,3 1.395 1.406 1.297 93,0 92,2
2 C Prerađivačka industrija 769.000 764.00 775.000 100,8 101,4 1.176 1.169 1.187 100,9 101,5
3 D Proizvodnja i snabdijevanje električnom energi... 1.574 1.57 1.647 104,6 104,9 2.459 2.455 2.579 104,9 105,1
Да, я хочу именно так. Но я хочу включить число выше: 0 2017 IX 2018 X 2018 .......
Можете ли вы уточнить, пожалуйста, укажите, как? Есть 2 строки с этими числами, и по крайней мере первая строка не выглядит выровненной с остальной частью файла.
Эти числа - мои столбцы... Я хочу включить их в свою таблицу.
Хорошо, но если вы хотите использовать их в качестве заголовка, они должны быть выровнены с остальной частью таблицы. Например. какой колонке соответствует "IX 2018"? Справа внизу нет столбца
Это нормально, но тогда вам нужно сначала переформатировать файл, поставить «IX 2018» выше 1.053 и т. д., чтобы мы могли использовать его в качестве заголовка.
D это не столбец....? объясните/покажите, что вы хотите..