Python Datframe向dataframe添加尽可能多的行的Numpy数组
我用Numpy来计算somme公式。 我需要一份更详细的数据表 我尝试了类似Python Datframe向dataframe添加尽可能多的行的Numpy数组,python,pandas,numpy,dataframe,rows,Python,Pandas,Numpy,Dataframe,Rows,我用Numpy来计算somme公式。 我需要一份更详细的数据表 我尝试了类似df_append.append的方法来加载数据帧中的数据 df_cars = pd.DataFrame(data= None,['CarName', "ModelName",'Month', 'values']) for(carname in cars): modelsnames = getModels(car) for(modelname in Models):
df_append.append
的方法来加载数据帧中的数据
df_cars = pd.DataFrame(data= None,['CarName', "ModelName",'Month', 'values'])
for(carname in cars):
modelsnames = getModels(car)
for(modelname in Models):
values=np.array(get_values(car,model))
#values = [1,5,6,9,10,2,10,7,23,90,102,14]
new_row={'CarName' :carname ,"ModelName": modelname, 'Month':np.arange(1,len(index)+1), 'value':index}
df_cars = df_cars.append(new_row, ignore_index=True)
但numpy值将其保存在一个单元格中(numpy公式的结果)
例如:
numpy values\U BMW\U系列1:[4500044000410004500042000]
Car Model Month value
1 BMW Serie1 1 [45000,44000,41000,45000,42000]
我需要将每个numpy值保存在一个单元格中
Car Model Month value
1 BMW Serie1 1 45000
2 BMW Serie1 2 44000
3 BMW Serie1 3 41000
4 BMW Serie1 4 45000
5 BMW Serie1 5 42000
要解决问题,请使用
explode()
函数:
import numpy as np
df_cars=df_cars.explode('value')
df_cars.index = np.arange(1, len(df_cars) + 1)
df_cars['Month']=df_cars.index
输出:
Car Model Month value
1 BMW Serie1 1 45000
2 BMW Serie1 2 44000
3 BMW Serie1 3 41000
4 BMW Serie1 4 45000
5 BMW Serie1 5 42000
您可以在上阅读有关
explode()
函数的更多信息要解决您的问题,请使用explode()
函数:
import numpy as np
df_cars=df_cars.explode('value')
df_cars.index = np.arange(1, len(df_cars) + 1)
df_cars['Month']=df_cars.index
输出:
Car Model Month value
1 BMW Serie1 1 45000
2 BMW Serie1 2 44000
3 BMW Serie1 3 41000
4 BMW Serie1 4 45000
5 BMW Serie1 5 42000
您可以阅读更多关于
explode()
功能的信息,该功能位于汽车是一个汽车名称列表,如汽车['BMW'、'Mercedes'、'Kia'…];主题是如何从numpy数组向数据帧追加许多行。您可以使用df_cars=df_cars.explode('value')
。但是,为什么要循环填充数据帧,而不是在数据帧成为df的一部分后转储所有数据并进行过滤?通过这种方式,您可以绕过循环和对getModels
和get_values
cars的许多调用,这是一个汽车名称列表,如汽车['BMW'、'Mercedes'、'Kia'…];主题是如何从numpy数组向数据帧追加许多行。您可以使用df_cars=df_cars.explode('value')
。但是,为什么要循环填充数据帧,而不是在数据帧成为df的一部分后转储所有数据并进行过滤?通过这种方式,您可以绕过循环和对getModels
和get\u values
的许多调用,它是否回答了您的问题?如果是,接受它来结束问题。但是我在“月”列中有相同的值?我不能分解很多列。我在找修复方法它能回答你吗?如果是,接受它来结束问题。但是我在“月”列中有相同的值?我不能分解很多列。我正在找人修理它