数据转dataframe

数据转dataframe

list转dataframe

方法1:先用list构造字典,再转dataframe

a=[1,2,3,4] #列表a
b=[5,6,7,8] #列表b
 
c={"a":a,
   'b':b}  #用列表a,b构造字典
 
data=DataFrame(c)
print(data)

在这里插入图片描述

方法2:对于符合列表,可以直接转成dataframe

a=[[1,2,3,4],[5,6,7,8]]#包含两个不同的子列表[1,2,3,4]和[5,6,7,8]
 
data=DataFrame(a)#这时原列表中的每个元素对应一条数据
print(data)

在这里插入图片描述
如果希望原列表中的每个元素对应dataframe中的一列,将得到的dataframe进行转置即可:

a=[[1,2,3,4],[5,6,7,8]]#包含两个不同的子列表[1,2,3,4]和[5,6,7,8]
 
data=DataFrame(a)#这时原列表中的每个元素对应一条数据
data=data.T
print(data)

在这里插入图片描述

Series转dataframe

1. to_frame()方法

a = pd.Series(['1','2','3','4'])
series
Out[57]: 
0    1
1    2
2    3
3    4
aa = a.to_frame()

aa
Out[74]: 
   0
0  1
1  2
2  3
3  4

将Series的index也变为一列的方法
例如:month是一个series对象,它的index为日期,values为数量,下面将这两列都转换为DataFrame的columns。

import pandas as pd

dict_month = {'month':month.index,'numbers':month.values}
df_month = pd.DataFrame(dict_month)

dict转dataframe

第一种方法,直接使用pd.DataFrame()。

需要注意的是这种方法需要先将字典变为list

>>> dict = {'a':'apple','b':'banana'}
>>> dict
{'a': 'apple', 'b': 'banana'}
>>> import pandas as pd
>>> df = pd.DataFrame([dict])
>>> df
       a       b
0  apple  banana

最后输出的结果是以字典的keys作为columns。

import pandas as pd
data = {'name': ['nick', 'david', 'joe', 'ross'],
        'age': ['5', '10', '7', '6']} 
new = pd.DataFrame.from_dict(data)
new

在这里插入图片描述

import pandas as pd
  
  
data = [{'area': 'new-hills', 'rainfall': 100, 'temperature': 20},
         {'area': 'cape-town',  'rainfall': 70, 'temperature': 25},
         {'area': 'mumbai',  'rainfall': 200,  'temperature': 39 }]
df = pd.DataFrame.from_dict(data)
df

在这里插入图片描述

使用DataFrame的from_dict()方法。

>>> df = pd.DataFrame.from_dict(dict, orient='index',columns=['fruits'])
>>> df = df.reset_index().rename(columns = {'index':'id'})
>>> df
  id  fruits
0  a   apple
1  b  banana
>>> 

将字典的keys和values分别作为了DataFrame的两列。最主要的是reset_index().rename()方法,将作为index的keys变为DataFrame中的一列

将字典转变为Series,再转为DataFrame。

>>> df = pd.DataFrame(pd.Series(dict), columns=['fruits'])
>>> df = df.reset_index().rename(columns={'index':'id'})
>>> df
  id  fruits
0  a   apple
1  b  banana
>>> 

array转dataframe

import numpy as np
import pandas as pd
mat = np.random.randn(3,4)
df = pd.DataFrame(mat)
df
# Python program to Create a 
# Pandas DataFrame from a Numpy  
# array and specify the index column 
# and column headers
  
# import required libraries
import pandas as pd
import numpy as np
  
# creating a numpy array
numpyArray = np.array([[15, 22, 43], 
                       [33, 24, 56]])
  
# generating the Pandas dataframe
# from the Numpy array and specifying
# name of index and columns
panda_df = pd.DataFrame(data = numpyArray,
                        index = ['Row_' + str(i + 1) 
                        for i in range(numpyArray.shape[0])],
                        columns = ['Column_' + str(i + 1) 
                        for i in range(numpyArray.shape[1])])
  
# printing the dataframe
print(panda_df)

在这里插入图片描述

数据库提取的数据转为DataFrame格式

解析法

def get_df_from_db(sql):
    cursor = connection.cursor()
    cursor.execute(sql)
    data = cursor.fetchall()
    columnDes = cursor.description #获取连接对象的描述信息
    columnNames = [columnDes[i][0] for i in range(len(columnDes))]
    df = pd.DataFrame([list(i) for i in data],columns=columnNames)
    return df

直接利用pandas读取sql

def get_df_from_db_1(sql):
    return pd.read_sql(sql,connection)

其中,connection为连接数据库的参数

connection = MySQLdb.connect(host='*****'
                           , port=****
                           , db='****'
                           , user='****'
                           , passwd='****'
                           , charset='utf8')
智能网联汽车的安全员高级考试涉及多个方面的专业知识,包括但不限于自动驾驶技术原理、车辆传感器融合、网络安全防护以及法律法规等内容。以下是针对该主题的一些核心知识解析: ### 关于智能网联车安全员高级考试的核心内容 #### 1. 自动驾驶分级标准 国际自动机工程师学会(SAE International)定义了六个级别的自动驾驶等级,从L0到L5[^1]。其中,L3及以上级别需要安全员具备更高的应急处理能力。 #### 2. 车辆感知系统的组成与功能 智能网联车通常配备多种传感器,如激光雷达、毫米波雷达、摄像头和超声波传感器等。这些设备协同工作以实现环境感知、障碍物检测等功能[^2]。 #### 3. 数据通信与网络安全 智能网联车依赖V2X(Vehicle-to-Everything)技术进行数据交换,在此过程中需防范潜在的网络攻击风险,例如中间人攻击或恶意软件入侵[^3]。 #### 4. 法律法规要求 不同国家和地区对于无人驾驶测试及运营有着严格的规定,考生应熟悉当地交通法典中有关自动化驾驶部分的具体条款[^4]。 ```python # 示例代码:模拟简单决策逻辑 def decide_action(sensor_data): if sensor_data['obstacle'] and not sensor_data['emergency']: return 'slow_down' elif sensor_data['pedestrian_crossing']: return 'stop_and_yield' else: return 'continue_driving' example_input = {'obstacle': True, 'emergency': False, 'pedestrian_crossing': False} action = decide_action(example_input) print(f"Action to take: {action}") ``` 需要注意的是,“同学”作为特定平台上的学习资源名称,并不提供官方认证的标准答案集;建议通过正规渠道获取教材并参加培训课程来准备此类资格认证考试
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值