iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >pandas创建DataFrame对象失败的解决方法
  • 762
分享到

pandas创建DataFrame对象失败的解决方法

pandas创建DataFrame对象失败pandas创建DataFrame对象 2023-01-17 18:01:34 762人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录报错代码报错翻译报错原因解决方法创建DataFrame对象的四种方法1. list列表构建DataFrame2. dict字典构建DataFrame3. ndarray创建Dat

报错代码

粉丝群一个小伙伴想pandas创建DataFrame对象,但是发生了报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下希望可以帮助到更多遇到这个bug不会解决的小伙伴),报错代码如下:

import pandas as pd

data = {'name': ['a', 'b'],
        'Height': [140, 150, 160, 170],
        'Weight': [40, 50, 60, 70]}
df = pd.DataFrame(data, index=list('abcd'))
print(df)

报错信息截图如下所示:

在这里插入图片描述

报错翻译

报错信息翻译如下

值错误:传递值的形状为(2,3),索引表示(4,3)

报错原因

传递创建DataFrame的值和索引对不上,小伙伴们按下面正确的方法创建即可!!!

解决方法

每一个列表的长度都要相同

import pandas as pd

data = {'name': ['a', 'b','c','d'],
        'Height': [155, 160, 175, 180],
        'Weight': [50, 48, 52, 65]}
df = pd.DataFrame(data, index=list('abcd'))
print(df)

运行结果:

在这里插入图片描述

创建DataFrame对象的四种方法

DataFrame 构造方法如下:

pandas.DataFrame( data, index, columns, dtype, copy)

参数说明:

  • data:一组数据(ndarray、series, map, lists, dict 等类型)。
  • index:索引值,或者可以称为行标签。
  • columns:列标签,默认为 RangeIndex (0, 1, 2, …, n) 。
  • dtype:数据类型。
  • copy:拷贝数据,默认为 False。

1. list列表构建DataFrame

1)通过单列表创建

>>> import pandas as pd
>>>
>>> data = [0, 1, 2, 3, 4, 5]
>>> df = pd.DataFrame(data)
>>> print(df)
   0
0  0
1  1
2  2
3  3
4  4
5  5
>>> print(type(df))
<class 'pandas.core.frame.DataFrame'>

2)通过嵌套列表创建

>>> import pandas as pd
>>>
>>> data = [['小明', 20], ['小红', 10]]
>>> df = pd.DataFrame(data, columns=['name', 'age'], dtype=float)
sys:1: FutureWarning: Could not cast to float64, falling back to object. This behavior is deprecated. In a future version, when a dtype is passed to 'DataFrame', either all columns will be cast to that dtype, or a TypeError will be raised
>>> print(df)
  name   age
0   小明  20.0
1   小红  10.0
>>> print(type(df))
<class 'pandas.core.frame.DataFrame'>

3)列表中嵌套字典(字典的键被用作列名,缺失则赋值为NaN):

>>> import pandas as pd
>>>
>>> data = [{'A': 1, 'B': 2}, {'A': 3, 'B': 4, 'C': 5}]
>>> df = pd.DataFrame(data)
>>> print(df)
   A  B    C
0  1  2  NaN
1  3  4  5.0
>>> print(type(df))
<class 'pandas.core.frame.DataFrame'>

2. dict字典构建DataFrame

使用 dict 创建,dict中列表的长度必须相同, 如果传递了index,则索引的长度应等于数组的长度。如果没有传递索引,则默认情况下,索引将是range(n),其中n是数组长度。

1)普通创建:

>>> import pandas as pd
>>>
>>> data = {'name': ['小红', '小明', '小白'], 'age': [10, 20, 30]}
>>> df = pd.DataFrame(data)
>>> print(df)
  name  age
0   小红   10
1   小明   20
2   小白   30
>>> print(type(df))
<class 'pandas.core.frame.DataFrame'>

2)设置index创建:

>>> import pandas as pd
>>>
>>> data = {'name': ['小红', '小明', '小白'], 'age': [10, 20, 30]}
>>> df = pd.DataFrame(data, index=['老三', '老二', '老大'])
>>> print(df)
   name  age
老三   小红   10
老二   小明   20
老大   小白   30
>>> print(type(df))
<class 'pandas.core.frame.DataFrame'>

3. ndarray创建DataFrame

1)普通方式创建:

>>> import pandas as pd
>>> import numpy as np
>>>
>>> data = np.random.randn(3, 3)
>>> print(data)
[[-1.9332579   0.70876382 -0.44291914]
 [-0.26228642 -1.05200338  0.57390067]
 [-0.49433001  0.70472595 -0.50749279]]
>>> print(type(data))
<class 'numpy.ndarray'>
>>> df = pd.DataFrame(data)
>>> print(df)
          0         1         2
0 -1.933258  0.708764 -0.442919
1 -0.262286 -1.052003  0.573901
2 -0.494330  0.704726 -0.507493
>>> print(type(df))
<class 'pandas.core.frame.DataFrame'>

2)设置列名创建:

>>> import pandas as pd
>>> import numpy as np
>>>
>>> data = np.random.randn(3, 3)
>>> print(data)
[[-0.22028147  0.62374794 -0.66210282]
 [-0.71785439 -1.21004547  1.15663811]
 [ 1.47843923  0.4385811   0.31931312]]
>>> print(type(data))
<class 'numpy.ndarray'>
>>> df = pd.DataFrame(data, columns=list("ABC"))
>>> print(df)
          A         B         C
0 -0.220281  0.623748 -0.662103
1 -0.717854 -1.210045  1.156638
2  1.478439  0.438581  0.319313
>>> print(type(df))
<class 'pandas.core.frame.DataFrame'>

4. Series创建DataFrame

>>> import pandas as pd
>>>
>>> data = {'A': pd.Series(1, index=list(range(4)), dtype='float32'),
...         'B': pd.Series(2, index=list(range(4)), dtype='float32'),
...         'C': pd.Series(3, index=list(range(4)), dtype='float32')
...         }
>>> df = pd.DataFrame(data)
>>> print(df)
     A    B    C
0  1.0  2.0  3.0
1  1.0  2.0  3.0
2  1.0  2.0  3.0
3  1.0  2.0  3.0
>>> print(type(df))
<class 'pandas.core.frame.DataFrame'>

帮忙解决

到此这篇关于pandas创建DataFrame对象失败的解决方法的文章就介绍到这了,更多相关pandas创建DataFrame对象失败内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: pandas创建DataFrame对象失败的解决方法

本文链接: https://www.lsjlt.com/news/178030.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • pandas创建DataFrame对象失败的解决方法
    目录报错代码报错翻译报错原因解决方法创建DataFrame对象的四种方法1. list列表构建DataFrame2. dict字典构建DataFrame3. ndarray创建Dat...
    99+
    2023-01-17
    pandas创建DataFrame对象失败 pandas创建DataFrame对象
  • Pandas数据结构详细说明及如何创建Series,DataFrame对象方法
    目录1. Pandas的两种数据类型2. Series类型通过numpy array通过Python字典通过标量值(Scalar)name属性3. DataFrame类型通过包含列表...
    99+
    2022-11-12
  • 创建java虚拟机失败的解决方法
    创建java虚拟机失败的解决方法解决问题的步骤:从eclipse文件夹中打开eclipse.ini文件修改–launcher.XXMaxPermSize属性将值改为512m即可配置文件格式:-startup plugins/org.ecli...
    99+
    2017-03-11
    java入门 java 虚拟机
  • springboot创建文件夹失败的解决方法
    本篇文章给大家分享的是有关springboot创建文件夹失败的解决方法,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。springboot创建文件夹失败今天用idea写sprin...
    99+
    2023-06-29
  • Pandas中DataFrame对象转置的方法是什么
    本篇内容介绍了“Pandas中DataFrame对象转置的方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!DataFrame对象本质...
    99+
    2023-07-05
  • vb方法作用于对象失败怎么解决
    如果在使用VB方法时遇到了对象失败的错误,可以尝试以下解决方法: 检查对象是否已被正确初始化。确保已经使用New关键字或其他初始化...
    99+
    2023-10-28
    vb
  • SequoiaDB报告创建线程失败的解决办法
    1.问题背景对于分布式数据库和分布式环境,高并发和高性能压力的情况下,出现线程创建失败等等问题也是十分常见的,这时候就十分考虑数据库管理员的经验,需要能快速的定位到问题和瓶颈所在,快速解决。本文也是作为一个...
    99+
    2022-10-18
  • springboot创建文件夹失败的解决
    目录springboot创建文件夹失败springboot日志目录创建失败springboot创建文件夹失败 今天用idea写springboot工程,明明在idea中创建了两个文件...
    99+
    2022-11-13
  • 【总结】php出现new对象失败的原因和解决方法
    PHP是一种广泛应用于Web开发的编程语言,它具有简单易学、高效、灵活等优点,因此越来越受到开发者的欢迎。在PHP的开发过程中,经常会使用new关键字来创建对象,但有时会遇到new对象失败的情况。本篇文章将对该问题进行分析和解决。一、new...
    99+
    2023-05-14
    php
  • JavaScript创建对象的方法
    这篇文章主要讲解了“JavaScript创建对象的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript创建对象的方法”吧! 通过 Jav...
    99+
    2022-10-19
  • php session_start 失败的解决方法
    本篇内容介绍了“php session_start 失败的解决方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!php session_st...
    99+
    2023-06-20
  • mysql start失败的解决方法
    这篇文章主要为大家展示了“mysql start失败的解决方法”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“mysql start失败的解决方法”这篇文章吧。 ...
    99+
    2022-10-19
  • JAVA对象创建与对象克隆的方法
    这篇文章主要介绍了JAVA对象创建与对象克隆的方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JAVA对象创建与对象克隆的方法文章都会有所收获,下面我们一起来看看吧。一、对象的4种创建方式new 创建反射克隆...
    99+
    2023-06-29
  • 解决Callable的对象中,用@Autowired注入别的对象失败问题
    实现Callable的对象中,用@Autowired注入别的对象失败 场景是这样: 我需要在一个实现类A中写一个拿到返回值的多线程,于是用的Callable,在这个实现类A外我又写了...
    99+
    2022-11-12
  • Session对象失效的客户端解决方法284587解决
    ASP(Active Server Pages)技术的Session对象用于存储用户在对话期间的私有信息。当前用户的Session对象中定义的变量和对象能在页面之间共享,但是不能为应...
    99+
    2023-05-20
    Session对象失效的客户端解决方法
  • 解决netty中spring对象注入失败的问题
    目录netty中spring对象注入失败发现了问题所在在netty中注入spring成份可以通过以下方式netty中spring对象注入失败 今天在做项目的时候发现在netty中注入...
    99+
    2022-11-13
  • Active部件不能创建对象wscript.shell的错误解决方法
    本机的vbs不能运行了。找了很久都没找到找到了Wscript.Shell的相关文章 得到了我要的结果 ActiveX 部件不能创建对象 Wscript.Shell 在运行里面输入regsvr32 %windir%system32WSHom....
    99+
    2023-06-03
  • Windows更新失败的解决方法
    这篇文章主要介绍Windows更新失败的解决方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Windows更新失败的解决方法一:重启电脑,按F8进入高级开机选项,选择回车“最近一次的正确配置(高级)”,如图所示:W...
    99+
    2023-06-28
  • KB4012213安装失败的解决方法
    这篇文章主要介绍了KB4012213安装失败的解决方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。KB4012213其实是微软官方系统安全补丁,可以让你的win8系统免受勒...
    99+
    2023-06-13
  • 怎么解决mysql外键创建失败的问题
    这篇文章主要讲解了“怎么解决mysql外键创建失败的问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决mysql外键创建失败的问题”吧!创建pers...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作