如果CSV的第一行以"apple)"."pear)"等8种单词结尾,那么就分列。
时间: 2023-07-06 14:27:40 浏览: 76
SQL SERVER 根据关键字符,将一列分成多行
4星 · 用户满意度95%
可以在之前的代码基础上稍作修改,将判断条件改为判断最后8个单词是否符合要求。代码如下:
```python
import pandas as pd
df = pd.read_csv('filename.csv')
header = df.columns.tolist()
if all(word in header[-8:] for word in ["apple)", "pear)", "banana)", "orange)", "peach)", "grape)", "lemon)", "lime)"]):
# 分列
columns = 8
new_header = header[:-8]
for i in range(columns):
new_header.append(f"column_{i+1}")
new_df = pd.DataFrame(columns=new_header)
for i in range(columns):
new_df[f"column_{i+1}"] = df.iloc[:, -8+i].tolist()
new_df.to_csv('new_filename.csv', index=False)
```
其中,`filename.csv`为原始CSV文件名,`new_filename.csv`为分列后的新文件名。如果原始CSV文件的第一行最后8列分别为"apple)"、"pear)"、"banana)"、"orange)"、"peach)"、"grape)"、"lemon)"和"lime)",则会将其分列,并将结果写入新文件。新文件中的列名为"column_1"、"column_2"等。
阅读全文