# -*- coding: UTF-8 -*- import pandas as pd # 读取Excel文件 df = pd.read_excel('E:/桌面/预测脆弱性/20230523/基础数据/降雨小于0-分类.xlsx') # 定义筛选条件 condition1 = df['筛选事件'] = 0 condition2 = df['易结冰'] = 1 condition3 = df['管制'] = 1 df.loc[~condition1 & ~condition2 & ~condition3, "分类"] = "事故" df.loc[condition1 & condition2 & ~condition3, "分类"] = "易结冰" df.loc[condition1 & ~condition2 & condition3, "分类"] = "管制" df.loc[~condition1 & condition2 & ~condition3, "分类"] = "事故-易结冰" df.loc[~condition1 & ~condition2 & condition3, "分类"] = "事故-管制" df.loc[condition1 & condition2 & condition3, "分类"] = "易结冰-管制" df.loc[~condition1 & condition2 & condition3, "分类"] = "事故-易结冰-管制" df.loc[condition1 & ~condition2 & ~condition3, "分类"] = "无分类" df.to_excel("E:/桌面/预测脆弱性/20230523/基础数据/降雨小于0-分类结果.xlsx", index=False)为什么用这个代码会修改原始数据
时间: 2024-02-03 16:12:11 浏览: 55
这个代码会修改原始数据是因为在对 DataFrame 进行修改时,使用了原始 DataFrame 的引用。因此,如果想要保留原始 DataFrame,可以使用 `copy()` 方法创建一个新的 DataFrame,然后对新的 DataFrame 进行修改,如下所示:
```python
df = pd.read_excel('E:/桌面/预测脆弱性/20230523/基础数据/降雨小于0-分类.xlsx').copy()
```
这样就可以避免修改原始数据了。
相关问题
# -*-coding:utf-8-*- import pandas as pd import json import pprint # 读取csv文件 df = pd.read_csv('202205012-20230512.csv', header=None, skiprows=1, usecols=[1,2,3]) # 将数据转换为JSON格式 data = df.to_dict(orient='records') json_data = json.dumps(data) data_t = json.loads(json_data) for ele in data_t: print(ele['代码'])
这段代码的作用是读取一个csv文件,并将其中的数据转换为JSON格式,然后输出其中每行数据的“代码”这一列的值。
其中:
- 第1行声明编码格式为UTF-8;
- 第2行导入pandas库,用于数据处理;
- 第3行导入json库,用于JSON格式的编码和解码;
- 第5行利用pandas库读取csv文件(文件名为“202205012-20230512.csv”),跳过第1行表头,仅读取第2、3、4列(用cols参数指定),并将其转换为pandas的DataFrame对象df;
- 第8行将DataFrame对象df转换为JSON格式,存储在变量json_data中;
- 第10行将json_data解码为Python对象(即一个字典列表),存储在变量data_t中;
- 第12~14行遍历data_t中的每个字典元素,输出其中key为“代码”的value值。
# -*- coding: utf-8 -*- import os import pandas as pd import numpy as np dir = "D:\\RYG" filename_excel = [] frames = [] for root, dirs, files in os.walk(dir): for file in files: #print(os.path.join(root,file)) filename_excel.append(os.path.join(root,file)) df = pd.read_excel(os.path.join(root,file)) print(filename_excel) result = pd.concat(frames) result.head() result.shape result.to_csv('D:\\RYG\\NEW RYG.csv',sep=',',index = False)
这是一个Python脚本,用于遍历指定目录下的Excel文件,读取数据并合并成一个DataFrame,最后将合并后的数据导出为CSV文件。脚本中使用了os、pandas和numpy等Python库。其中,os库用于遍历目录下的文件,pandas库用于读取和处理Excel数据,numpy库用于处理数值计算。脚本中首先定义了一个目录路径,然后使用os.walk()函数遍历目录下的所有文件,并将Excel文件的路径保存到一个列表中。接着,使用Pandas库中的read_excel()函数读取每个Excel文件的数据,并将其保存到一个DataFrame中。最后,使用concat()函数将所有的DataFrame合并成一个,并将合并后的数据导出为CSV文件。
阅读全文