распределение чисел в 2 столбца. Pandas

Есть csv файл с числами разделенные "," и все эти числа находтся в одном столбце. Для удобства дальнейшей работы хочу разделить на 2 отдельных столбца. Но никак не могу понять как это делать. Для string это просто, нужно использовать механизм .str.split(','), но что делать, если все значения числа?

Уже пробовал перевести все числа в string и по известной схеме, но по-моему есть вариант получше.

Пример данных:
"Time, seconds","Series values, dB"
0,-117
0.0001,46
0.0002,-478
0.000300001,2
0.000400001,4
0.000500001,-218
0.000600001,-322

Уже много чего перепробовал. Можете помочь?


Ответы (2 шт):

Автор решения: Oopss

Если используете pandas, то можно так:

import pandas as pd

d=pd.read_csv('d.csv',header=None, decimal=',', dtype={'0': float})
d.columns = ['Time, seconds', 'Series values, dB']
print(d)

  Time, seconds  Series values, dB
0             0               -117
1        0.0001                 46
2        0.0002               -478
3   0.000300001                  2
4   0.000400001                  4
5   0.000500001               -218
6   0.000600001               -322
→ Ссылка
Автор решения: CrazyElf

Просто укажите правильный разделитель столбцов sep=',', дальше Pandas разберётся:

import pandas as pd
from io import StringIO

data = StringIO("""
"Time, seconds","Series values, dB"
0,-117
0.0001,46
0.0002,-478
0.000300001,2
0.000400001,4
0.000500001,-218
0.000600001,-322""")

df = pd.read_csv(data, sep=',')
print(df)

Вывод:

   Time, seconds  Series values, dB
0         0.0000               -117
1         0.0001                 46
2         0.0002               -478
3         0.0003                  2
4         0.0004                  4
5         0.0005               -218
6         0.0006               -322
→ Ссылка