0基础使用python处理csv文件数据 -1

#通过python处理csv数据,筛选出列坐标中的最大值。

一、 CSV模块使用介绍

和Excel相比,CSV文件没有:

·值没有类型,所有东西都是字符串;

·没有字体大小或颜色设置

·没有多个工作表

·不能指定单元格高度和宽度

·不能合并单元格

·不能嵌入图像或图标

csv文件的优势是简单。

1.1 reader对象

import csv
exampleFile = open('example.csv')
exampleReader = csv.reader(exampleFile)
exampleData = list(exampleReader)
print(exampleData)
print(exampleData[0][0], exampleData[0][1], exampleData[0][2])

1-csv模块是python自带的,不需要安装就可以导入它。

4-要访问reader对象中的值,最直接的方法就是将它转换成一个普通的python列表,即将他的值传给list()。在这个reader对象上应用list()函数,将返回一个列表的列表。

6-既然已经将csv文件表示为列表的列表,就可以使用表达式 exampleData[row][col]来访问特定行和列的值 4/5/2014 13:34 Apples 73

1.2 在for循环中,从reader对象读取数据

import csv
exampleFile = open('example.csv')
exampleReader = csv.reader(exampleFile)
for row in exampleReader:
    print('Row #' + str(exampleReader.line_num) + ' ' + str(row))

在导入csv模块,并从csv文件获得reader对象之后,就可以循环遍历reader对象中的行了。每一行是一个值的列表,每个值表示一个单元格。

二、控制流语句-for详解

参考:http://t.csdnimg.cn/Xncu9

目录

一、 CSV模块使用介绍

1.1 reader对象

1.2 在for循环中,从reader对象读取数据

二、控制流语句-for详解

2.1 for循环range()函数介绍

1、for循环的基本用法

2、range()函数的用法

3、for循环和range()函数的应用场景

4、案例分析

使用for循环和range()函数实现九九乘法表

使用for循环和range()函数进行数据统计

练习题

1.1读取csv,使用默认的标题行,逗号分隔符

读取CSV文件中,第二列数据并输出最大值

1.2读取txt文件,自己指定分隔符、列名


2.1 for循环range()函数介绍

for循环和range()函数是非常常用的语法结构,用于遍历序列和重复执行一段代码块。

1、for循环的基本用法

在Python中,for循环用于遍历序列(如列表、元组、字符串)或其他可迭代对象(如迭代器、生成器)。其基本语法如下:

for 变量 in 可迭代对象:
    执行语句1
    执行语句2
    ...

其中,变量是每次循环中的元素值,可迭代对象是一个容器或者一个可迭代的对象。在每次循环中,代码块中的语句将被执行。下面是一个简单的例子:

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)

运行结果为:

apple
banana
cherry

2、range()函数的用法

ange()函数是一个用于生成整数序列的函数,其基本语法如下:

range(start, stop, step)

参数start表示序列的起始值,默认为0;参数stop表示序列的结束值,取不到该值;参数step表示序列中的元素之间的步长,默认为1。下面是一个简单的例子:

for i in range(1, 5):
    print(i)
# 运行结果为:
# 1
# 2
# 3
# 4

3、for循环和range()函数的应用场景

  1. 遍历列表 for循环和range()函数常用于遍历列表,并对列表中的元素进行操作。例如,计算列表中所有元素的和:

  2. 遍历字典 虽然字典本身是无序的,但是可以通过遍历字典的键或值来进行操作。例如,打印字典中的键和对应的值:

4、案例分析

使用for循环和range()函数实现九九乘法表
for i in range(1, 10):
    for j in range(1, i+1):
        print(f"{j} x {i} = {i*j}", end="\t")
    print()
使用for循环和range()函数进行数据统计

for循环和range()函数在数据统计和分析中也是非常有用的工具。下面是一个案例,通过统计学生成绩的平均值和最高分:

scores = [85, 92, 78, 90, 89]
total = 0
max_score = 0

for score in scores:
    total += score
    if score > max_score:
        max_score = score

average = total / len(scores)

print("平均分:", average)
print("最高分:", max_score)

运行结果为:

平均分: 86.8
最高分: 92
练习题

使用for循环和range()函数找出列表中的最小值

numbers = [15, 8, 27, 10, 6]
min_number = numbers[0]

for i in range(1, len(numbers)):
    if numbers[i] < min_number:
        min_number = numbers[i]

print(min_number)

三、使用Pandas处理csv文件

Pandas需要先读取表格类型的数据,然后进行分析

1.1读取csv,使用默认的标题行,逗号分隔符

pandas相关函数:

  # 使用pd.re ad_csv读取数据
  data = pd.read_csv('文件名.csv')
  # 查看前几行的数据,默认前5行
  data.head()
  # pandas的索引、列名
  #查看数据形状,返回(行数,列数)
  data.shape
  #查看列名列表
  data.columns
  #查看索引列
  data.index
  #查看每列的数据类型
  data.dtypes

读取CSV文件中,第二列数据并输出最大值

import pandas as pd
import numpy as np
data = pd.read_csv('11111111111111111111111.csv')
print(data.index,data.columns)
col2 = data['200.00']
max_number = col2[0]
for i in range(1,len(col2)):
    if col2[i] > max_number:
        max_number = col2[i]
print(max_number)

1.2读取txt文件,自己指定分隔符、列名

fpath = "./***/***.txt"
pvuv = pd.read_csv(
    fpath,
    sep="\t", # 指定分隔符
    header=None, #没有列名
    names=['time','temp'] #指定列名
)

 

  • 12
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值