1

Тема: error pandas.core.frame.DataFrame' convert to srting

df=pd.DataFrame(net.load, columns=['p_mw'],index=[x])

Маю

00112 df=
   p_mw
0  50.0
<class 'pandas.core.frame.DataFrame'>

треба отримати стринг числа 50.0
pppp=df.to_string()

отримав помилку

ValueError: could not convert string to float: '   p_mw\n0  50.0'

2

Re: error pandas.core.frame.DataFrame' convert to srting

може я не те запитую.

Э така ячейка
00112 df=
   p_mw
0  50.0
<class 'pandas.core.frame.DataFrame'>

В наступну строчку треба ввести p_mw=50.5  автоматично , не вручну  замість p_wm=10.0

pandapower.create_load(net4, bus=x, p_mw=10.0, q_mvar=0.2)

Вводити p_mw треба автоматично, бо я хочу формувати в циклі кілька таких строчок.

3

Re: error pandas.core.frame.DataFrame' convert to srting

це нам треба покликати пана koala'у, він в пайтоні розбирається
зробімо це разом: kooooaaaalaaa! kooooaaaalaaa! kooooaaalaaa!

4

Re: error pandas.core.frame.DataFrame' convert to srting

Факі, а ви розумієте, що пан узагалі хоче? Бо в мене якось не складається.

Подякували: leofun011

5

Re: error pandas.core.frame.DataFrame' convert to srting

koala написав:

Факі, а ви розумієте, що пан узагалі хоче? Бо в мене якось не складається.

та я в пайтоні не розбираюсь

6

Re: error pandas.core.frame.DataFrame' convert to srting

ig0r-1954 написав:
df=pd.DataFrame(net.load, columns=['p_mw'],index=[x])

Маю

00112 df=
   p_mw
0  50.0
<class 'pandas.core.frame.DataFrame'>

треба отримати стринг числа 50.0
pppp=df.to_string()

отримав помилку

ValueError: could not convert string to float: '   p_mw\n0  50.0'

ну і?
якщ Вам трабе змінити  тип якогось стовпця чи окремого елемента - нащо використовуєте метод df.to_string() ??
читаємо доку

pandas.DataFrame.to_string

DataFrame.to_string(self, параметри поскіпано...) → Union[str, NoneType][source]

    Render a DataFrame to a console-friendly tabular output.
https://pandas.pydata.org/pandas-docs/s … tring.html

Подякували: leofun011

7

Re: error pandas.core.frame.DataFrame' convert to srting

якщо нам треба колонку перетворити в стрінг

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3]})
df.index.name = 'idx'
display(df)
display(df.dtypes)

df['A'] = df['A'].map(str)
display(df)
display(df.dtypes)
display(type(df.loc[0, 'A']))

idx     A
0     1
1     2
2     3

A    int64
dtype: object


idx     A
0     1
1     2
2     3

A    object
dtype: object

str

Подякували: leofun011

8

Re: error pandas.core.frame.DataFrame' convert to srting

якщо нам треба перетворити с трінг тільки елементи колонки з певним індексом

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 3]})
df.index.name = 'idx'
display(df)

idx = [0, 2]
df.loc[idx, 'A'] = df.loc[idx, 'A'].map(str)
display(df)
display(df.dtypes)
display(type(df.loc[0, 'A']))
display(type(df.loc[1, 'A']))
display(type(df.loc[2, 'A']))

idx     A
0     1
1     2
2     3

idx     A
0     1
1     2
2     3

A    object
dtype: object

str

int

str

9 Востаннє редагувалося ping (09.05.2020 11:10:59)

Re: error pandas.core.frame.DataFrame' convert to srting

ig0r-1954 написав:

може я не те запитую.

Э така ячейка
00112 df=
   p_mw
0  50.0
<class 'pandas.core.frame.DataFrame'>

В наступну строчку треба ввести p_mw=50.5  автоматично , не вручну  замість p_wm=10.0

pandapower.create_load(net4, bus=x, p_mw=10.0, q_mvar=0.2)

Вводити p_mw треба автоматично, бо я хочу формувати в циклі кілька таких строчок.

важко зрозуміти що насправді Вам хочеться зробити
але кидається в очі надмірна любов до циклів.
то навіщо Вам той пандас? пишіть зразу все циклами, функціями, класами/методами в циклах
пандас призначений для роботи з табличними наборами даних (колонки, рядки, матриці) ВЕКТОРНО
в цьому його сила
а якщо Ви хочете ітеруватися по рядках і щось міняти в конкретних чарунках (cells) - то це вже не векторна обробка даних і пандас не допомагатиме, а може і заважатиме

Подякували: koala, leofun01, Testacc9963