楼主: 小金刚嗯那
1479 14

[统计软件与数据分析] 求助,什么办法可以批量把txt转换成excel [推广有奖]

11
煮酒问剑 在职认证  发表于 2024-4-28 15:22:20
可以使用Python来完成批量将TXT文件转换成Excel文件的任务,并且按照句子分割,每句作为Excel表格的一行。下面是一个简单的示例代码,展示了如何实现这个功能。这个例子使用了`pandas`和`openpyxl`库来创建和写入Excel文件,如果你的环境中没有这些库,请先使用`pip install pandas openpyxl`命令安装。

```python
import pandas as pd
import os
import re

# 定义一个函数来处理单个TXT文件的转换
def txt_to_excel(txt_file_path, excel_file_path):
    # 读取TXT文件内容
    with open(txt_file_path, 'r', encoding='utf-8') as file:
        content = file.read()

    # 使用正则表达式按句子分割文本
    # 这里假设句子以句号、问号或感叹号结束
    sentences = re.split(r'[。?!]\s*', content)
    # 过滤掉空字符串
    sentences = [s for s in sentences if s]

    # 创建一个DataFrame
    df = pd.DataFrame(sentences, columns=['句子'])

    # 将DataFrame保存到Excel文件
    df.to_excel(excel_file_path, index=False)

# 指定TXT文件所在的文件夹和目标Excel文件的保存文件夹
txt_folder_path = 'path/to/your/txt_files'
excel_folder_path = 'path/to/save/excel_files'

# 遍历TXT文件所在文件夹中的所有TXT文件
for txt_file in os.listdir(txt_folder_path):
    if txt_file.endswith('.txt'):
        # 构造TXT文件的完整路径和对应的Excel文件路径
        txt_file_path = os.path.join(txt_folder_path, txt_file)
        excel_file_name = txt_file.replace('.txt', '.xlsx')
        excel_file_path = os.path.join(excel_folder_path, excel_file_name)

        # 调用函数进行转换
        txt_to_excel(txt_file_path, excel_file_path)

        print(f'已转换文件:{txt_file} 到 {excel_file_name}')
```

这段代码首先定义了一个`txt_to_excel`函数,用于将单个TXT文件转换为Excel文件。然后,代码遍历指定文件夹中的所有TXT文件,并对每个文件调用这个函数进行处理。你需要将`txt_folder_path`和`excel_folder_path`变量的值替换为你自己的TXT文件所在的文件夹路径和希望保存Excel文件的目标文件夹路径。

注意,这个示例代码使用了一个简单的正则表达式来分割句子,它假设每个句子都以句号、问号或感叹号结束。这可能不适用于所有情况,因此你可能需要根据实际的文本内容调整正则表达式。

此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用



企微

12
djunsheep 学生认证  发表于 2024-4-28 19:18:42 来自手机
小金刚嗯那 发表于 2024-4-28 12:56
你好,我试了一下,好像文件里有类似
一、xxxxx
1.1 xxxxx
还是那句话,除非你举的例子能完整包含所有的情况,不然还是建议你最好发一小段样本上来,不改变结构和格式的情况下自己替换一些字。来来回回搞不完的

13
pcstar 发表于 2024-4-29 01:07:18
你可以使用Python中的pandas套件来批量将txt档案转换成Excel。首先,确保你已经安装了pandas套件。接着,你可以使用下面的程序代码,这个程序会读取指定目录下的所有txt档案,将其转换成DataFrame,然后储存成Excel档案。你需要将your_txt_directory和your_excel_directory分别改成txt档案所在的目录和Excel档案要储存的目录。程序会在Excel档案的名称中保留txt档案的名称,只是扩展名改为xlsx。
import pandas as pd
import os

# 设定txt档案所在的目录
txt_dir = 'your_txt_directory'

# 设定Excel档案要储存的目录
excel_dir = 'your_excel_directory'

# 确认目录存在,若不存在则建立目录
if not os.path.exists(excel_dir):
    os.makedirs(excel_dir)

# 取得txt目录下的所有档案
txt_files = os.listdir(txt_dir)

# 循环处理每个txt档案
for txt_file in txt_files:
    # 确认档案是txt档案
    if txt_file.endswith('.txt'):
        # 读取txt档案成为DataFrame
        df = pd.read_csv(os.path.join(txt_dir, txt_file), delimiter='\t')  # 如果txt档案的分隔符不是tab,请修改delimiter参数
        # 储存成Excel档案
        excel_file = os.path.splitext(txt_file)[0] + '.xlsx'  # 将txt文件名改为xlsx格式
        df.to_excel(os.path.join(excel_dir, excel_file), index=False)

14
zelda0079 发表于 2024-5-19 11:59:03
要批量将txt文件转换成excel格式,我们可以使用Python进行处理。下面是具体的步骤和代码示例:

  • 首先,需要安装pandas库。如果未安装,可以通过pip命令来安装:

[color=rgba(255, 255, 255, 0.7)]plaintext



   pip install pandas



  • 然后,我们需要编写一个Python脚本来读取txt文件,并将其内容转换为Excel文件。假设我们的txt文件中的数据是以逗号分隔的,我们可以使用pandas的read_csv函数来读取txt文件,然后使用to_excel函数将DataFrame保存为Excel文件。

以下是一个简单的示例代码:

[color=rgba(255, 255, 255, 0.7)]python



import pandas as pdimport osdef txt_to_excel(directory):    for filename in os.listdir(directory):        if filename.endswith('.txt'):            # 构建txt文件的完整路径            file_path = os.path.join(directory, filename)            # 读取txt文件            df = pd.read_csv(file_path, sep=",", header=None)  # 假设文件是逗号分隔的,没有表头            # 构建Excel文件的完整路径            excel_path = os.path.join(directory, filename.replace('.txt', '.xlsx'))            # 将DataFrame保存为Excel文件            df.to_excel(excel_path, index=False)            print(f"{filename}已转换为{excel_path}")# 指定你的txt文件所在的目录directory = "你的目录路径"txt_to_excel(directory)



以上代码中,我们定义了一个txt_to_excel函数,该函数接受一个包含txt文件的目录路径作为参数。它遍历该目录下的所有txt文件,读取每个txt文件的内容到DataFrame中,然后将DataFrame保存为Excel格式的文件。这里假设txt文件中的数据是逗号分隔的,且没有表头。如果你的txt文件格式不同,可能需要调整read_csv函数的参数。

使用以上代码,你可以实现批量将txt文件转换成Excel文件的功能。只需将directory变量设置为你的txt文件所在的目录路径即可。
1

15
zelda0079 发表于 2024-5-19 12:00:56
要批量将txt文件转换成excel格式,我们可以使用Python进行处理。下面是具体的步骤和代码示例:
首先,需要安装pandas库。如果未安装,可以通过pip命令来安装:

  1.    pip install pandas
复制代码

然后,我们需要编写一个Python脚本来读取txt文件,并将其内容转换为Excel文件。假设我们的txt文件中的数据是以逗号分隔的,我们可以使用pandas的read_csv函数来读取txt文件,然后使用to_excel函数将DataFrame保存为Excel文件。
以下是一个简单的示例代码:

  1. import pandas as pd
  2. import os

  3. def txt_to_excel(directory):
  4.     for filename in os.listdir(directory):
  5.         if filename.endswith('.txt'):
  6.             # 构建txt文件的完整路径
  7.             file_path = os.path.join(directory, filename)
  8.             # 读取txt文件
  9.             df = pd.read_csv(file_path, sep=",", header=None)  # 假设文件是逗号分隔的,没有表头
  10.             # 构建Excel文件的完整路径
  11.             excel_path = os.path.join(directory, filename.replace('.txt', '.xlsx'))
  12.             # 将DataFrame保存为Excel文件
  13.             df.to_excel(excel_path, index=False)
  14.             print(f"{filename}已转换为{excel_path}")

  15. # 指定你的txt文件所在的目录
  16. directory = "你的目录路径"
  17. txt_to_excel(directory)
复制代码

以上代码中,我们定义了一个txt_to_excel函数,该函数接受一个包含txt文件的目录路径作为参数。它遍历该目录下的所有txt文件,读取每个txt文件的内容到DataFrame中,然后将DataFrame保存为Excel格式的文件。这里假设txt文件中的数据是逗号分隔的,且没有表头。如果你的txt文件格式不同,可能需要调整read_csv函数的参数。
使用以上代码,你可以实现批量将txt文件转换成Excel文件的功能。只需将directory变量设置为你的txt文件所在的目录路径即可。
1

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
扫码
拉您进交流群
GMT+8, 2026-3-10 13:17