Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何创建数据帧的集合_Python - Fatal编程技术网

Python 如何创建数据帧的集合

Python 如何创建数据帧的集合,python,Python,我有这个密码 y2 = {} x1=datasim.iloc[:,1] y1=datasim.iloc[:, ::2] x2=[i*(0.1) for i in range(4800)] x2 = {} for column in x1: xb=[i*(0.1) for i in range(4800)] x2[column]=pd.DataFrame(xb) for column in y1: y2[y1.columns.get_loc(column)]=np.inte

我有这个密码

y2 = {}
x1=datasim.iloc[:,1]
y1=datasim.iloc[:, ::2]
x2=[i*(0.1) for i in range(4800)]
x2 = {}
for column in x1:
    xb=[i*(0.1) for i in range(4800)]
    x2[column]=pd.DataFrame(xb)
for column in y1:
    y2[y1.columns.get_loc(column)]=np.interp(x2,x1,y1[column])
当我执行代码时,会收到以下错误消息:

float()参数必须是字符串或数字,而不是“dict”

如何修复代码?

正如所述,
interp()
的第二个参数应该是1-D浮点序列,第三个参数应该是1-D浮点序列或复数序列

但是,您的
x2
x1
不是单向浮点或复杂序列,而是一个字典

现在,这取决于您希望代码被更改的确切程度


把字典列成一个单子
对于每一串或单个键,让它们在一个二维列表中的每个不同的一维列表上运行

如果一个或所有的代码都错了,或者发生了什么不好的事情,请告诉我。我将修复您的投诉。

您在哪一行收到此错误?我在最后一行收到错误,我们无法复制您的代码。发布一个我们可以复制/粘贴并复制的代码。什么是
datasim
?请共享整个错误消息以及。datasim是一个数据帧,完整消息错误如下:回溯(最近一次调用):文件“”,第11行,在y2[y1.columns.get_loc(column)]=np.interp(x2,x1,y1[column]),文件“”,第6行,在interp文件中“C:\Users\shengesh\AppData\Local\Continuum\anaconda3\lib\site packages\numpy\lib\function\u base.py”,interp return interp_func(x,xp,fp,left,right)中的第1412行类型错误:float()参数必须是字符串或数字,而不是“dict”
from collections import defaultdict

def flattenit(sublist):
    flat_list = []
    for sublist in l:
        for item in sublist:
            flat_list.append(item)

# so on ...

y2 = {}
x1=datasim.iloc[:,1]

sub_x1 = defaultdict(list)
for k, v in x1:
    sub_x1[k].append(v)

y1=datasim.iloc[:, ::2]
x2=[i*(0.1) for i in range(4800)]
x2 = {}

sub_x2 = defaultdict(list)
for k, v in x2:
    sub_x2[k].append(v)

for column in x1:
    xb=[i*(0.1) for i in range(4800)]
    x2[column]=pd.DataFrame(xb)
for column in y1:
    y2[y1.columns.get_loc(column)]=np.interp(flattenit( sub_x2.keys() ),
                                             flattenit( sub_x1.keys() ),
                                             y1[column])

# so on 'til an end...


# Oh, by the way, this couple of a stackoverflow posts helped to write this code:
# https://stackoverflow.com/questions/952914/how-to-make-a-flat-list-out-of-list-of-lists
# https://stackoverflow.com/questions/960733/python-creating-a-dictionary-of-lists 
# so on ...

y2 = [] #sorry for your y2! but now it's a list.
x1=datasim.iloc[:,1]
y1=datasim.iloc[:, ::2]
x2=[i*(0.1) for i in range(4800)]
x2 = {}
for column in x1:
    xb=[i*(0.1) for i in range(4800)]
    x2[column]=pd.DataFrame(xb)
for column in y1:
    for i in len(x2.keys()):
        y2.append([])
        y2[i].append([])
        for j in len(x1.keys()):
            y2[i].append(np.interp(x2[i], x1[j], y1[column]))

# so on 'til an end