数据分析与处理python_python数据分析与处理

fromPyQt5 importQtCore, QtGui, QtWidgets fromPyQt5.QtGui importQIcon fromPyQt5.QtWidgets import* fromPyQt5.QtCore import* importpandas aspd importnumpy asnp fromtkinter importmessagebox importwin32api,win32con fromtkinter import* classUi_MainWindow(QMainWindow): def__init__(self): super(QtWidgets.QMainWindow,self).__init__() self.setupUi(self) self.retranslateUi(self) defsetupUi(self, MainWindow):

MainWindow.setObjectName("MainWindow")

MainWindow.resize(666, 680) self.centralWidget = QtWidgets.QWidget(MainWindow) self.centralWidget.setObjectName("centralWidget") self.retranslateUi(MainWindow) self.tableWidget = QtWidgets.QTableWidget(self.centralWidget) self.tableWidget.setGeometry(QtCore.QRect(0, 60, 813, 371)) self.tableWidget.setObjectName("tableWidget") self.tableWidget.setColumnCount(0) self.tableWidget.setRowCount(0) self.tableWidget.setStyleSheet("selection-background-color:pink") self.tableWidget.setEditTriggers(QAbstractItemView.NoEditTriggers) self.tableWidget.raise_() # self.tableWidget_1 = QtWidgets.QTableWidget(self.centralWidget_1)# self.tableWidget_1.setGeometry(QtCore.QRect(0, 450, 813, 200))# self.tableWidget_1.setObjectName("tableWidget")# self.tableWidget_1.setColumnCount(0)# self.tableWidget_1.setRowCount(0)# self.tableWidget_1.setStyleSheet("selection-background-color:pink")# self.tableWidget_1.setEditTriggers(QAbstractItemView.NoEditTriggers)# self.tableWidget_1.raise_()self.pushButton = QtWidgets.QPushButton(self.centralWidget) self.pushButton.setGeometry(QtCore.QRect(20, 20, 75, 23)) self.pushButton.setObjectName("pushButton") self.pushButton.setText("打开") self.pushButton_1 = QtWidgets.QPushButton(self.centralWidget) self.pushButton_1.setGeometry(QtCore.QRect(100, 20, 130, 23)) self.pushButton_1.setObjectName("pushButton") self.pushButton_1.setText("筛选31个周期数据") self.pushButton_2 = QtWidgets.QPushButton(self.centralWidget) self.pushButton_2.setGeometry(QtCore.QRect(230, 20, 130, 23)) self.pushButton_2.setObjectName("pushButton") self.pushButton_2.setText("拟合求极化参数") self.pushButton_3 = QtWidgets.QPushButton(self.centralWidget) self.pushButton_3.setGeometry(QtCore.QRect(360, 20, 130, 23)) self.pushButton_3.setObjectName("pushButton") self.pushButton_3.setText("极化参数拟合")

MainWindow.setCentralWidget(self.centralWidget)

QtCore.QMetaObject.connectSlotsByName(MainWindow) self.pushButton.clicked.connect(self.openfile) self.pushButton.clicked.connect(self.creat_table_show) self.pushButton_1.clicked.connect(self.select_31) self.pushButton_1.clicked.connect(self.select_31_table_show) defretranslateUi(self, MainWindow):

_translate = QtCore.QCoreApplication.translate

MainWindow.setWindowTitle(_translate("MainWindow", "BMS数据预处理")) defopenfile(self): ###获取路径===================================================================openfile_name = QFileDialog.getOpenFileName(self,'选择文件','','Excel files(*.xlsx , *.xls)') #print(openfile_name)globalpath_openfile_name globaldata globalb globals ###获取路径====================================================================path_openfile_name = openfile_name[0] defcreat_table_show(self): ###===========读取表格,转换表格,===========================================iflen(path_openfile_name) > 0: # ##===========读取表格,转换表格,===========================================# data = pd.read_excel(path_openfile_name)# Adata = pd.DataFrame(data)# Bdata = Adata[Adata['x'] == 0]# cycle = int(len(Bdata) / 11)# Cdata = {}## for i in range(cycle):# b = Bdata.loc[i * 14 4:i * 14 9]# b.to_excel('C:\\Users\\xyy\\Desktop\\119.xlsx')## input_table = binput_table = pd.read_excel(path_openfile_name) #print(input_table)input_table_rows = input_table.shape[0]

input_table_colunms = input_table.shape[1] #print(input_table_rows)#print(input_table_colunms)input_table_header = input_table.columns.values.tolist() #print(input_table_header)###===========读取表格,转换表格,============================================###======================给tablewidget设置行列表头============================self.tableWidget.setColumnCount(input_table_colunms) self.tableWidget.setRowCount(input_table_rows) self.tableWidget.setHorizontalHeaderLabels(input_table_header) ###======================给tablewidget设置行列表头============================###================遍历表格每个元素,同时添加到tablewidget中========================fori inrange(input_table_rows):

input_table_rows_values = input_table.iloc[[i]] #print(input_table_rows_values)input_table_rows_values_array = np.array(input_table_rows_values)

input_table_rows_values_list = input_table_rows_values_array.tolist()[0] #print(input_table_rows_values_list)forj inrange(input_table_colunms):

input_table_items_list = input_table_rows_values_list[j] #print(input_table_items_list)# print(type(input_table_items_list))###==============将遍历的元素添加到tablewidget中并显示=======================input_table_items = str(input_table_items_list)

newItem = QTableWidgetItem(input_table_items)

newItem.setTextAlignment(Qt.AlignHCenter|Qt.AlignVCenter) self.tableWidget.setItem(i, j, newItem) ###================遍历表格每个元素,同时添加到tablewidget中========================else: self.centralWidget.show() defselect_31(self): ###===========读取表格,转换表格,===========================================data = pd.read_excel(path_openfile_name)

Adata = pd.DataFrame(data)

Bdata = Adata[Adata['x'] == 0]

cycle = int(len(Bdata) / 11) Cdata= {} fori inrange(cycle):

b = Bdata.loc[i * 14 4:i * 14 9]

b.to_excel('C:\\Users\\xyy\\Desktop\\150.xlsx') defselect_31_table_show(self): iflen(pd.read_excel('C:\\Users\\xyy\\Desktop\\150.xlsx'))>0:

win32api.MessageBox(0, "success,请到路径C:\\Users\\xyy\\Desktop\\150.xlsx查看表格", "提醒", win32con.MB_OK) else:

win32api.MessageBox(0, "error", "提醒", win32con.MB_OK) # self.centralWidget.close()## ###===========读取表格,转换表格,===========================================# if len(path_openfile_name) > 0:# input_table = b# #print(input_table)# input_table_rows = input_table.shape[0]# input_table_colunms = input_table.shape[1]# #print(input_table_rows)# #print(input_table_colunms)# input_table_header = input_table.columns.values.tolist()# #print(input_table_header)## ###===========读取表格,转换表格,============================================# ###======================给tablewidget设置行列表头============================## self.tableWidget.setColumnCount(input_table_colunms)# self.tableWidget.setRowCount(input_table_rows)# self.tableWidget.setHorizontalHeaderLabels(input_table_header)## ###======================给tablewidget设置行列表头============================## ###================遍历表格每个元素,同时添加到tablewidget中========================# for i in range(input_table_rows):# input_table_rows_values = input_table.iloc[[i]]# #print(input_table_rows_values)# input_table_rows_values_array = np.array(input_table_rows_values)# input_table_rows_values_list = input_table_rows_values_array.tolist()[0]# #print(input_table_rows_values_list)# for j in range(input_table_colunms):# input_table_items_list = input_table_rows_values_list[j]# #print(input_table_items_list)# # print(type(input_table_items_list))## ###==============将遍历的元素添加到tablewidget中并显示=======================## input_table_items = str(input_table_items_list)# newItem = QTableWidgetItem(input_table_items)# newItem.setTextAlignment(Qt.AlignHCenter|Qt.AlignVCenter)# self.tableWidget.setItem(i, j, newItem)## ###================遍历表格每个元素,同时添加到tablewidget中========================# else:# self.centralWidget.show()if__name__ == "__main__": importsys

app = QtWidgets.QApplication(sys.argv)

MainWindow = QtWidgets.QMainWindow()

ui = Ui_MainWindow()

ui.setupUi(MainWindow)

MainWindow.show()

sys.exit(app.exec_())

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值