#Dataframe数据塞进列表 listbook2 = [] listbook = [] for i in range(book2.iloc[:,0].size): #生成列表 s = book2.iloc[i]['Age'] s = s.strip() listbook.append(s) s = book2.iloc[i]['Sex'] s = s.strip() listbook.append(s) s = book2.iloc[i]['Marital status?'] s = s.strip() listbook.append(s) s = book2.iloc[i]['Education'] s = s.strip() listbook.append(s) s = book2.iloc[i]['Employement'] s = s.strip() listbook.append(s) s = book2.iloc[i]['How many books did you read during last 12months?'] s = s.strip() listbook.append(s) s = book2.iloc[i]['Read any printed books during last 12months?'] s = s.strip() listbook.append(s) s = book2.iloc[i]['Read any audiobooks during last 12months?'] s = s.strip() listbook.append(s) s = book2.iloc[i]['Read any e-books during last 12months?'] s = s.strip() listbook.append(s) s = book2.iloc[i]['Do you happen to read any daily news or newspapers?'] s = s.strip() listbook.append(s) s = book2.iloc[i]['Do you happen to read any magazines or journals?'] s = s.strip() listbook.append(s) listbook2.append(listbook.copy()) listbook.clear()
时间: 2023-07-15 07:10:06 浏览: 95
这段代码的主要作用是将一个DataFrame中的数据逐行读取,并将每行的数据存储到一个列表中,再将该列表添加到另一个列表中,最终得到一个二维列表。其中,book2是一个DataFrame对象,包含多个列,每列都是一种数据类型,而iloc[:,0]表示取出DataFrame中的第一列数据,size表示该列数据的大小。循环中,首先将每列数据进行去空格处理,然后按顺序添加到一个列表中。最后,将该列表添加到另一个列表中,这里使用listbook.copy()复制列表,避免了原列表被修改的情况。最后,清空列表,以便下一次使用。
相关问题
xlwings读取pd.DataFrame第一列乘以第二列数据 是成本
可以使用xlwings的Range对象来读取DataFrame中的数据,并计算成本。具体实现可以参考以下代码:
```python
import xlwings as xw
import pandas as pd
# 读取Excel中的数据
wb = xw.Book('example.xlsx')
sheet = wb.sheets['Sheet1']
df = sheet.range('A1').options(pd.DataFrame, header=1, index=False, expand='table').value
# 计算成本
cost = df.iloc[:, 0] * df.iloc[:, 1]
# 将结果写入Excel
sheet.range('C1').value = cost
```
上述代码中,首先使用xlwings的Range对象读取Excel中的数据,并将其转换为DataFrame格式。然后,计算成本并将结果写入Excel。其中,`iloc[:, 0]`表示取DataFrame中的第一列数据,`iloc[:, 1]`表示取第二列数据。最终的成本结果存储在`cost`变量中,可以直接赋值给Excel中的单元格。
xlwings读取pd.DataFrame第一列成第二列数据 是成本
我不确定你的问题是什么,但是我尝试回答一下。
如果你想将一个DataFrame的第一列复制到第二列,可以使用以下代码:
```python
import pandas as pd
import xlwings as xw
# 打开Excel文件
wb = xw.Book('example.xlsx')
# 选择Sheet
sheet = wb.sheets['Sheet1']
# 读取DataFrame
df = sheet.range('A1').options(pd.DataFrame, header=1, index=False, expand='table').value
# 复制第一列到第二列
df.iloc[:, 1] = df.iloc[:, 0]
# 将修改后的DataFrame写入Excel
sheet.range('A1').options(index=False, header=True).value = df
```
这段代码做了以下几件事情:
1. 打开Excel文件并选择Sheet1。
2. 读取A1单元格开始的数据区域作为DataFrame,其中第一行被视为列名。
3. 将DataFrame的第一列复制到第二列。
4. 将修改后的DataFrame写回Excel文件中的A1单元格。
如果你想做其他事情,比如计算成本或者将结果写入其他单元格,可以在代码中添加相应的代码。
阅读全文