如果我在一个文件夹里面有很多个txt文件,我想按顺序处理完文件夹中所有的txt文件,处理方式为 txt点云文件一共有7列数据 我提取前6列,最后一列的label标签 如果是4保持不变,5变成4,6变成5我该怎么写代码 window系统 最后附上cmake
时间: 2023-10-06 21:05:57 浏览: 93
点云数据当中点的绘制顺序代码
你可以使用Python的os和glob库来遍历文件夹,使用pandas库来读取和处理txt文件,代码如下:
```python
import os
import glob
import pandas as pd
# 遍历文件夹中所有txt文件
for filename in glob.glob('folder/*.txt'):
# 读取txt文件并提取前6列和最后一列的数据
df = pd.read_csv(filename, header=None, usecols=[0,1,2,3,4,5,6])
data = df.iloc[:, :-1]
label = df.iloc[:, -1]
# 修改标签
label = label.replace({5: 4, 6: 5})
# 将修改后的数据和标签保存到新的txt文件中
new_df = pd.concat([data, label], axis=1)
new_filename = os.path.splitext(filename)[0] + '_new.txt'
new_df.to_csv(new_filename, header=None, index=False, sep=' ')
```
对于CMakeLists.txt文件,你可以根据你的工程需要进行相应的修改。例如,你可以添加以下内容:
```
cmake_minimum_required(VERSION 3.5)
# 添加C++编译选项
set(CMAKE_CXX_STANDARD 11)
# 添加头文件和库文件路径
include_directories(${CMAKE_SOURCE_DIR}/include)
link_directories(${CMAKE_SOURCE_DIR}/lib)
# 添加可执行文件
add_executable(my_program main.cpp)
# 链接库文件
target_link_libraries(my_program my_library)
```
其中,`add_executable()`函数用于添加可执行文件,`target_link_libraries()`函数用于链接库文件。你需要将`my_program`和`my_library`替换为你的可执行文件名和库文件名。
阅读全文