pandas如何统计excel中列数据的行数?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pandas如何统计excel中列数据的行数?相关的知识,希望对你有一定的参考价值。
列数据的统计数,现有值a,a,b,c ,c,c 如何得到计数列?
已知“值”列,求“计数”列?
结果如下:
准备测试数据:
打开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())
不知道这是不是您想要的结果,如果有帮助,请采纳一下,谢谢!
追问如图,已知“值”列,求出“计数”列。如:相同的a有多少个,查到一个a,计数列就加1
参考技术A 1.导入数据源 #导入相关库 import pandas as pd import numpy as np import os from pandas import ...2.数据基本处理
3.查看列名和数据类型 print(df.columns) #查看列名 print(df.dtypes) #查看各列数据类型
4.查看指定行列数据 print(df.head(20)) #查看前20行数据 参考技术B 首先需要用pip 安装pandas、 xlrd、openpyxl,
import pandas as pd
data_path = 'C:/EXCEL/1.xlsx' //此处为excel表的路径
data = pd.read_excel(data_path)
data.loc[0,'ground_time'] = '888' //0代表第一行,‘ground_time’是列名
data.to_excel(data_path, index=None)
print(data)
data.shape[1] #获取列数
data.shape[0] #获取行数 参考技术C
import pandas as pd
data = pd.read_excel('C:/EXCEL/1.xlsx' )
print(data.assign(计数=data.groupby('值').cumcount()+1))
参考技术D b2=if(a2<>a1,1,b1+1)下拉,顺便纠正下纵向叫行,横叫列Excel表格如何统计选中行的行数?
1,打开Excel表格程序,进入程序主界面中,打开一张要进行操作的表格。
2,接着,在Excel表格中点击上方菜单中的“函数”,点击以下的函数。
3,在对话框窗口中输入以下内容。
4,接着,在第二行位置输入统计的区域。
5,最后,即可看到Excel自动统计的行数,问题解决。
参考技术A 如果你是整行选中的话 是无法自动 显示在 状态栏 函数的结果的!只能用 vba 来进行计算!
如果你是 通过 按住 ctrl 键这样子 选中 不同的行的话 可以通过如下代码来实现你的 行数计数……
复制这段代码 粘贴到 插入的模块中( alt+f11 插入模块),然后 选完之后 再运行这个 宏……
Sub tt()
For i = 1 To Selection.Areas.Count
j = j + Selection.Areas(i).Rows.Count
Next
MsgBox "一共选中了 " & j & " 行"
End Sub 参考技术B 如果你是整行选中的话 是无法自动 显示在 状态栏 函数的结果的!
只能用 vba 来进行计算!
如果你是 通过 按住 ctrl 键这样子 选中 不同的行的话 可以通过如下代码来实现你的 行数计数……
复制这段代码 粘贴到 插入的模块中( alt+f11 插入模块),然后 选完之后 再运行这个 宏……
Sub tt()
For i = 1 To Selection.Areas.Count
j = j + Selection.Areas(i).Rows.Count
Next
MsgBox "一共选中了 " & j & " 行"
End Sub
以上是关于pandas如何统计excel中列数据的行数?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用python pandas删除csv中列中的精确重复项