python實現讀取“\\168.63.22.177\台账\境内互换”下的excel文件“境内收益互换-230522-逐笔盯保”,讀取sheet“現金流水表”,讀取“流水確認日”為“2023/5/19”的所有合約
时间: 2023-11-09 16:08:49 浏览: 34
可以使用Python中的pandas库来读取Excel文件。以下是一段示范代码:
```python
import pandas as pd
# 读取Excel文件
file_path = r"\\168.63.22.177\台账\境内互换\境内收益互换-230522-逐笔盯保.xlsx"
df = pd.read_excel(file_path, sheet_name="現金流水表")
# 筛选满足条件的数据
selected_df = df[df["流水確認日"] == "2023/5/19"]
# 获取合约信息
contracts = selected_df["合约"]
# 输出结果
print(contracts)
```
在示范代码中,首先使用pandas库的read_excel方法读取了指定的Excel文件,并指定了要读取的表格名称。然后,使用DataFrame的方式来筛选出流水确认日为“2023/5/19”的数据。最后,获取符合条件的所有合约信息,并输出结果。
相关问题
“\168.63.22.177\台账\境内互换\境内收益互换-230515”表里的”现金流水表“sheet的D列流水确认日数据类型为日期yyyy/mm/dd,python实现读取D列为2023年5月15日的B列合同编号
?”
感谢您的提问。您可以使用Python中的pandas库来读取Excel表格数据,然后根据条件筛选出需要的行和列数据。具体实现步骤如下:
首先,您需要安装pandas库。
然后,您可以使用以下代码来读取Excel表格数据:
```
import pandas as pd
filename = r'\168.63.22.177\台账\境内互换\境内收益互换-230515.xlsx'
sheet_name = '现金流水表'
df = pd.read_excel(filename, sheet_name=sheet_name)
```
接下来,您可以使用以下代码来筛选出符合条件的行和列数据:
```
contract_id = df[df['D'] == '2023/05/15']['B'].values[0]
```
其中,`df[df['D'] == '2023/05/15']` 表示筛选出流水确认日为2023年5月15日的所有行,`['B']` 表示取出该行的合同编号列,最后使用 `values[0]` 取出该列的第一个值,即为您需要的合同编号。
希望以上代码对您有所帮助。
python实现在"\\168.63.22.177\台账\境内互换\境内收益互换-230522-逐笔盯保"中的"持仓明细"sheet的B列合同编号中搜索['HTSC-0158-PAZQ-0017-ITRS-221129-1', 'HTSC-0161-PAZQ-0018-ITRS-221206-1', 'HTSC-0178-GDZQ-0010-ITRS-221213-2', 'HTSC-0045-GDZQ-0005-ITRS-230215-1']这四笔合约,找到对应行,输出对应行的S列合约乘数
以下是用Python实现搜索并输出结果的代码:
```python
import pandas as pd
# 读入Excel文件,注意设置读取的sheet名
df = pd.read_excel(
"\\\\168.63.22.177\\台账\\境内互换\\境内收益互换-230522-逐笔盯保.xlsx",
sheet_name="持仓明细"
)
# 搜索B列中指定的合同编号
target_contracts = [
'HTSC-0158-PAZQ-0017-ITRS-221129-1',
'HTSC-0161-PAZQ-0018-ITRS-221206-1',
'HTSC-0178-GDZQ-0010-ITRS-221213-2',
'HTSC-0045-GDZQ-0005-ITRS-230215-1'
]
mask = df["合同编号"].isin(target_contracts)
# 输出对应行的S列合约乘数
print(df.loc[mask, "S列合约乘数"])
```
注意,上述代码中的 "\\" 起到了转义的作用,将 "\\\\168.63.22.177" 转义为 "\\\\"。如果直接将IP地址写在字符串中,会因为 "\t" 被当作TAB字符,无法正确解析。