有一部分csv文件里的列,不是完整的100%,只有分组求和之后才会变成100%,
data = {'唯一标识': ['A', 'B', 'C', 'A', 'B'],
'完整度': [1, 2, 3, 4, 5],
'基站': [10, 20, 30, 40, 50],
'小区标识': [100, 200, 300, 400, 500],
...}
df = pd.DataFrame(data)
result = df.groupby('唯一标识').agg({'完整度': 'sum', '基站': 'first', '小区标识': 'first', ... }).reset_index()
print(result)
不知道你这个问题是否已经解决, 如果还没有解决的话:使用Python处理CSV文件并保存所有列的数据可以通过以下步骤实现:
csv
模块,以便操作CSV文件。import csv
with open('input.csv', 'r') as input_file, open('output.csv', 'w', newline='') as output_file:
# 这里假设原始CSV文件名为input.csv,目标CSV文件名为output.csv
csv.reader
和csv.writer
对象,分别用于读取和写入CSV文件。 csv_reader = csv.reader(input_file)
csv_writer = csv.writer(output_file)
next
函数读取并保存原始CSV文件的表头(即列名)。 header = next(csv_reader)
csv_writer.writerow(header)
columns = [[] for _ in range(len(header))]
for row in csv_reader:
for i in range(len(row)):
columns[i].append(row[i])
None
或其他占位符来填充,确保每个列表的长度一致。 max_length = max(len(column) for column in columns)
for i in range(len(columns)):
while len(columns[i]) < max_length:
columns[i].append(None)
for i in range(max_length):
csv_writer.writerow([column[i] for column in columns])
input_file.close()
output_file.close()
以上是使用Python处理CSV文件并保存所有列的数据的具体解决方案,尽量展示了每一步的代码实现。