Pandas作业练习_weixin_42331532的博客-程序员宝宝

技术标签: python  数据分析练习  


```python
import pandas as pd
import numpy as np
#读数据
lianjia_df = pd.read_csv(r'lianjia9.csv')
#print(lianjia_df)

# 1. 观察结构,调整列索引顺序
#如何调整呢?,就是查找所有数据,将排好序的标签填进去,达到各列换位的一种效果
print(lianjia_df[["Region","Garden","Layout","Floor","Year","Size","Elevator","Direction","Renovation","Price"]].head())
lianjia_xiugai = lianjia_df[["Region","Garden","Layout","Floor","Year","Size","Elevator","Direction","Renovation","Price"]]
#创建一个新的变量存储列变换之后的数据
print(lianjia_xiugai)




# 2. 增加一个列关于目前状况(state),是否卖出状态随机
#读随机状态,有的是0有的是1,并不能一味地把所有的都设为1或0
import random
states = [0,1]
#shape函数是读取矩阵的长度,shape[0]是读取第一维度的数量,这里是指行数,即读取数据总行数
column_count = lianjia_df.shape[0]
#设置新的一列,random.choice是从非空序列中随机选取一个数据并带回
#python这个是真的方便
lianjia_df['state'] = [random.choice(states) for x in range(column_count)]

# 3. 删除id这一列无用的数据
# 备注:因为文件中的id不在了,所以先添加一个再删除一下
column_count = lianjia_df.shape[0]
# 先添加
lianjia_df['Id'] = [x for x in range(1,column_count+1)]
# 再删除
lianjia_df.drop("Id",axis=1,inplace=True)
# print(lianjia_df.head())








#python中字符串还能这么玩,牛逼
# floors = "我是低楼层"
# if "低楼层" in floors:
#     print("niubi")
``




# 4. 查找楼层小于7的房子(这里提取低楼层)
#定义一个函数,当楼层小于7的时候返回true,大于7返回false
def extract_low_floor(floors):
    #设置一个列表,用来存放最终结果
    low_floors = []
    for floor in floors:
        if "低楼层" in floor:
            low_floors.append(True)
        else:
            low_floors.append(False)
    return low_floors
#这里只会显示true的数据
low_floor_lianjia_df = lianjia_df[extract_low_floor(lianjia_df['Floor'])]
#print(low_floor_lianjia_df.head())

low_floor_line_count = low_floor_lianjia_df.shape[0]
print(low_floor_line_count)
#原文件可以直接设置
# lianjia_df['Elevator'] = "无电梯"
# print(lianjia_df.head())
#这里会报警告,意思是你在这上面进行改动,原来最初的版本的数据也会受到影响,但是我要的就是这个效果
low_floor_lianjia_df['Elevator'] = '无电梯'
print(low_floor_lianjia_df)`

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42331532/article/details/118852887

智能推荐

STM32 输入捕获的脉冲宽度及频率计算_Alen.Wang的博客-程序员宝宝_stm32输入捕获测频率

输入捕获模式可以用来测量脉冲宽度或者测量频率。STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能。以下是对脉冲宽度及频率的计算。1、脉冲宽度如下图所示,采集该高电平脉冲的宽度,只需要进入输入捕获上升沿检测,记录当前的发生上升沿时的CNT值,再进行输入捕获下降沿检测,也记录当前发生下降沿时的CNT值,两次CNT值的差值再根据计数的频率就可以算出脉冲的宽度。

老卫带你学---华为机试(16.购物单)_老卫带你学的博客-程序员宝宝

华为机试(16.购物单)问题:题目描述王强今天很开心,公司发给N元的年终奖。王强决定把年终奖用于购物,他把想买的物品分为两类:主件与附件,附件是从属于某个主件的,下表就是一些主件与附件的例子:主件 附件电脑 打印机,扫描仪书柜 图书书桌 台灯,文具工作椅 无如果要买归类为附件的物品,必须先买该附件所属的主件。每个主件可以有 0 个、 1 个或 2 个附件。附件不再有从属于自己的附件。王强想买的东西很多,为了不超出预算,他把每件物品规定了一个重要度,分为 5 等:用整数 1 ~ 5 表示,第

python为list实现find方法_csdn_yuan88的博客-程序员宝宝_python 列表find

原创:python为list实现find方法string类型的话可用find方法去查找字符串位置: 1 a_list.find('a') 如果找到则返回第一个匹配的位置,如果没找到则返回-1,而如果通过index方法去查找的话,没找到的话会报错。如果我们希望在list中也使用find呢?方法1,独立函数法 1234567 def list_find(item_list, find_item..

LaTeX的一些用法_风化记忆的博客-程序员宝宝_latex parbox

最近学习了关于论文的排版,需要用LaTeX软件,这里简单介绍一些汇总的LaTeX的常用用法:1  LaTeX给文字或者公式添加方框\fbox{%    \parbox{\textwidth}{%      \begin{center}        aaa\\        bbb      \end{center}    }%  }

背景颜色渐变__XinXinM_的博客-程序员宝宝

背景颜色渐变语法1:background:linear-gradient(起始方向,颜色1,颜色2,...);background:-webkit-linear-gradient(left, red, blue);background:-webkit-linear-gradient(left top,red,blue);<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"&g

C语言经典算法 输入某年某月某日,判断这一天是这一年的第几天_小时候跳过吗的博客-程序员宝宝

C语言经典算法 输入某年某月某日,判断这一天是这一年的第几天

随便推点

CSDN【精品专栏】第五期_精品专栏的博客-程序员宝宝

《机器学习中的数学(全集)》https://blog.csdn.net/weixin_43716250/category_10520739.html《JVM 核心技术 32 讲》https://blog.csdn.net/kimmking/category_10400618.html《深度学习 PyTorch 极简入门》https://blog.csdn.net/red_stone1/category_10400559.html《Kubernetes 实践入门指南》https:/

OpenMAX概述_wujianming_110117的博客-程序员宝宝

OpenMAX概述媒体库可移植性标准OpenMAX是免费的跨平台API,通过支持跨多个操作系统和芯片平台开发,集成和编程加速多媒体组件,从而提供了全面的流媒体编解码器和应用程序可移植性。OpenMAX API将随处理器一起提供,以使库和编解码器实施者能够快速有效地利用新芯片的全部加速潜能-而不管底层的硬件体系结构如何。OpenMAX AL 1.1概览• Khronos注册表中提供了OpenMAX AL 1.1规范和头文件。• 《 OpenMAX AL 1.1参考指南》。OpenMAX AL 1

VS2005下OpenGL的配置及简单实例收藏_boyangjvngang的博客-程序员宝宝

 VS2005下OpenGL的配置及简单实例收藏学习OpenGL前的准备工作第一步,选择一个编译环境选择Visual Studio 2005作为学习OpenGL的环境。第二步,配置OpenGL环境具体做法在前一篇中。建议将相应文件放到VC的文件夹下,而不是PlatformSDK中。第三步,安装GLUT工具包GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。Windows

安装PyCharm新建项目出现No Python interpreter selected解决方法_LPF_FORFREE的博客-程序员宝宝

好多解决都是说添加python解析器就可以了,确实也是如此。Python–Preferences–Project Interpreter–Python Interpreter 点击“+”号选择系统安装的Python。but解析器呢,找了好多文件夹都没有,原来我们安装pycharm的时候并没有安装python解析器,首先下载安装python,这个可以参考这里:https://jingyan.baidu

HTML5制作畅销书,练习5:制作畅销书排行榜_25choose的博客-程序员宝宝

h1{background: green;}li{color:cornflowerblue;}#a1{list-style-image:url(../img/book_no01.gif);list-style-position:inside}#a2{list-style-image:url(../img/book_no02.gif);list-style-position:inside}#a3{l...

S3C2440 Linux驱动移植——SPI_yj4231的博客-程序员宝宝

PC主机:Ubuntu 10.4目标板:TQ2440开发板,linux内核2.6.32本文将从原理上讲解如何进行SPI驱动移植。作者希望在移植SPI驱动之前,您已对SPI子系统有所了解。本文的讲解将基于我所写的spi子系统分析:基于S3C2440的嵌入式Linux驱动——SPI子系统解读(一)基于S3C2440的嵌入式Linux驱动——SPI子系统解读(二)