网站首页 > 文章中心 > 其它

python统计行数函数

作者:小编 更新时间:2023-09-04 14:00:27 浏览量:250人看过

python如何去除重复行并分别统计重复的行数?已有去除重复的代码

python的速度效率是不高的,如何对速度要求比较高的话建议可以用c来写.

希望能帮到你~

===================================================

a=[] #初始化要用到的列表a,用于记录原始行信息

f1=file("1.txt", "r") #打开1.txt文件

python统计行数函数-图1

for line in f1:

a.append(line) #将1.txt文件每一行作为一个元素,存入列表a

f1.close

for n in a: #遍历a中每一项(记为n),即1.txt中每一行

flag=1

for i in range(0,len(b)):

if n == b[i][0]: #n与列表b中的每一项对比,如果有相等的:

python统计行数函数-图2

b[i][1]=b[i][1]+1 #那么对应的出现计数加1

flag=0

break

if flag==1: #如果前面的比对没有一个相等的,即该行是第一次出现:

b.append([n,1]) #那么在列表b中添加改行为新的一项

for n in b: #输出格式为:行信息 (tab) 出现次数 (回车)

print "Finished" #完成

pandas如何统计excel中列数据的行数?

准备测试数据:

测试数据

打开PyCharm输入以下代码

程序代码

运行效果如下:

运行效果展示

附上实现代码:

#!/usr/bin/env python

import pandas as pd

OPENPATH = 'test.xls'

SAVEPATH = 'test1.xls'

def total_count(path=OPENPATH, sheetname='testsheet'):

df = pd.read_excel(path, sheet_name=sheetname, names=['值', '计数'])

# 获取统计项目

item_name = set(df['值'])

# 创建字典统计

total_dict = dict(zip([i for i in item_name], [

0 for _ in range(len(item_name))]))

# 遍历"值"列,逐个统计数量

for index, item in enumerate(df['值']):

# 如果在set中

if item in item_name:

# 加入计数统计

total_dict[item] += df['计数'][index]

# 返回

return total_dict

def datato_excel(path=SAVEPATH, sheet_name='total', data_dict={}):

report_df = pd.DataFrame.from_dict(data_dict,orient='index')

xl_writer = pd.ExcelWriter(path)

report_df.to_excel(xl_writer, sheet_name)

try:

xl_writer.save()

print('Save completed')

except:

print('Error in saving file')

if __name__ == "__main__":

datato_excel(data_dict=total_count())

不知道这是不是您想要的结果,如果有帮助,请采纳一下,谢谢!

python 文件内容操作,如一个文件100万条数据,查询相同行数

使用open函数逐行读取文件,依次对比,如包含要求字符串,则数量累加1,读取完成后可统计出行数,代码如下:

n?=?0

for?line?in?open('filename','r'):

if?'固定字符串'?in?line:

n?+=?1

print(n)

说明:

使用 for line in open这种方式可以提高代码效率,如需要更复杂统计,例如重复行,则可以使用hash函数,把行hash值存入列表,再做统计.

如何按行枚举 python enumerate

enumerate()说明

enumerate()是python的内置函数

enumerate在字典上是枚举、列举的意思

对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值

enumerate多用于在for循环中得到计数

例如对于一个seq,得到:

enumerate()返回的是一个enumerate对象,例如:

enumerate()使用

如果对一个列表,既要遍历索引又要遍历元素时,首先可以这样写:

list1 = ["这", "是", "一个", "测试"]

for i in range (len(list1)):

上述方法有些累赘,利用enumerate()会更加直接和优美:

for index, item in enumerate(list1):

print index, item

0 这

①. 是

enumerate还可以接收第二个参数,用于指定索引起始值,如:

for index, item in enumerate(list1, 1):

①. 这

补充

如果要统计文件的行数,可以这样写:

count = len(open(filepath, 'r').readlines())11

这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作.

可以利用enumerate():

count = -1

for index, line in enumerate(open(filepath,'r')):

count += 1

以上就是土嘎嘎小编为大家整理的python统计行数函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章