小编Mar*_*sli的帖子

使用python pandas使用新数据框附加现有excel表

我目前有这个代码.它完美地运作.

它循环遍历文件夹中的excel文件,删除前两行,然后将它们保存为单独的excel文件,并将文件作为附加文件保存在循环中.

目前,每次运行代码时附加的文件都会覆盖现有文件.

我需要将新数据附加到已经存在的Excel工作表的底部('master_data.xlsx)

dfList = []
path = 'C:\\Test\\TestRawFile' 
newpath = 'C:\\Path\\To\\New\\Folder'

for fn in os.listdir(path): 
  # Absolute file path
  file = os.path.join(path, fn)
  if os.path.isfile(file): 
    # Import the excel file and call it xlsx_file 
    xlsx_file = pd.ExcelFile(file) 
    # View the excel files sheet names 
    xlsx_file.sheet_names 
    # Load the xlsx files Data sheet as a dataframe 
    df = xlsx_file.parse('Sheet1',header= None) 
    df_NoHeader = df[2:] 
    data = df_NoHeader 
    # Save individual dataframe
    data.to_excel(os.path.join(newpath, fn))

    dfList.append(data) 

appended_data = …
Run Code Online (Sandbox Code Playgroud)

python excel for-loop append pandas

17
推荐指数
4
解决办法
4万
查看次数

Tailwind CSS 使页脚始终位于页面底部

所以,我正在构建一个基本布局为

  • 导航栏
  • 内容
  • 页脚

示例图片,取自:Tailwindcss:底部固定/粘性页脚

图片库特雷

我的 App.vue 组件

  <div class="justify-center h-screen relative">
    <TheNavbar class="top-0"/>
    <div class="h-screen mb-auto">
      <router-view class="mb-auto" :key="$route.fullPath"/>
    </div>
    <Toast v-if="showToast" :message="showToast"/>
    <Footer class="relative" :footer_links="footer_links"/>  
  </div>
Run Code Online (Sandbox Code Playgroud)

我希望页脚始终位于页面底部。当内容不够时,将Footer推到页面底部!

在我的内容上使用h-screen会将页脚推到底部。然而,在我需要滚动的页面上,页脚不会被向下推,而是会干扰内容。看图片...

在此输入图像描述

当我摆脱班级时,问题就逆转了h-screen。现在,如果没有足够的内容,页脚就会爬到内容处,在其下方留下空白区域。

在此输入图像描述

如何使页脚始终位于页面底部?


附录

使用:

<Footer class="fixed inset-x-0 bottom-0"/>  
Run Code Online (Sandbox Code Playgroud)

使页脚停留在页面底部。但是,现在当我滚动时,内容的底部被页脚剪切。

javascript css tailwind-css

9
推荐指数
1
解决办法
2万
查看次数

熊猫:根据其他列的值有条件地替换值

我有一个数据框(df),如下所示:

                    environment     event   
time                    
2017-04-28 13:08:22     NaN         add_rd  
2017-04-28 08:58:40     NaN         add_rd  
2017-05-03 07:59:35     test        add_env
2017-05-03 08:05:14     prod        add_env
...
Run Code Online (Sandbox Code Playgroud)

现在,我的目标是针对add_rdevent列中的每个列,该列中的关联NaNenvironment应替换为string RD

                    environment     event   
time                    
2017-04-28 13:08:22     RD          add_rd  
2017-04-28 08:58:40     RD          add_rd  
2017-05-03 07:59:35     test        add_env
2017-05-03 08:05:14     prod        add_env
...
Run Code Online (Sandbox Code Playgroud)

我到目前为止所做的

我偶然发现df['environment'] = df['environment].fillna('RD')哪个替换了每个 NaN(这不是我要寻找的),pd.isnull(df['environment'])它正在检测缺失的值,np.where(df['environment'], x,y)这似乎是我想要的但无法正常工作。此外,我是否尝试过

import pandas as pd

for env in df['environment']:
    if pd.isnull(env) and df['event'] …
Run Code Online (Sandbox Code Playgroud)

python dataframe python-3.x pandas

5
推荐指数
2
解决办法
5240
查看次数

如何在 Composition API 中观察 Vuex getter (Vue 3)

我的应用程序的状态似乎是在组件加载后加载的,所以我的想法是监视状态获取器。但是我如何在组合 API 中观察 Vuex getter?

我的状态和吸气剂:

state: () => ({
    companies: [],
  }),
  getters: {
    getAvailableCompanies(state) {
      return state.companies
    }
  },
  [...]
}
Run Code Online (Sandbox Code Playgroud)

在我的模块中,我导入商店:

import { store } from '@/store/store.js'
Run Code Online (Sandbox Code Playgroud)

并在我的组件的 setup() 函数中获取 getter 的值:

const companies = ref(store.getters["companies/getAvailableCompanies"])
console.log("companies", companies)
Run Code Online (Sandbox Code Playgroud)

现在,一旦填充状态,我就尝试观察更改(也在 setup() 中):

watch(
  companies, (curr, old) => {
    console.log(curr, old)
  }
)
Run Code Online (Sandbox Code Playgroud)

不幸的是,companies.value永远不会改变并保持不变undefined

javascript vuex vuejs3 vue-composition-api

4
推荐指数
1
解决办法
1万
查看次数

如何添加`default-allow-http`

如何将default-allow-httpterraform 脚本中的防火墙规则添加到 Google Cloud Compute 实例?

provider "google" {
    credentials = file("CREDENTIAL_FILE")
    project = "gitlab-project"
    region = var.region
}

resource "google_compute_instance" "gitlab" {
  name          = var.machine_specs.name
  machine_type  = var.machine_type.emicro
  zone          = var.zone

  boot_disk {
    initialize_params {
        image = var.machine_specs.os
        size = var.machine_specs.size
    }
  }

  network_interface {
    # A default network is created for all GCP projects
    network     = "default"
    access_config {
      nat_ip = google_compute_address.static.address
    }
  }

    // Add the SSH key
    metadata = {
        ssh-keys = "martin:${file("~/.ssh/id_rsa.pub")}"
    } …
Run Code Online (Sandbox Code Playgroud)

google-compute-engine google-cloud-platform terraform

3
推荐指数
1
解决办法
618
查看次数

VueJS 无需复杂的 v-if 语句即可获取异步状态

我有一个使用 Vue-Router 和 Vuex (商店)的应用程序。

在仪表板组件上,显示用户信息。Vue 从数据库中提取用户信息(异步)并将其推送到 Store。

现在,在我的子组件中,我通过商店访问此信息。问题是,在初始加载子组件时,存储中的用户条目为空。TypeError: $setup.user is null。现在,解决这个问题的一种方法是v-if在每个元素前面放置一个。然而,我发现这很整洁。

v-if我可以在每个 html 元素中添加一个吗?

用户.vue:

<template>
  <div>
    <div id="profile_content">
      <UserNavbar />
      <router-view :key="$route.fullPath" />
    </div>
  </div>
</template>
Run Code Online (Sandbox Code Playgroud)

用户仪表板:

<template>
<div>
    <ProfileInformationCard>
      <span v-if="user">{{ user.name }}</span>
      <span v-if="user">{{ user.lastLogin }}</span>
    </ProfileInformationCard>
</div>
</template>

<script>
import _ from "lodash";
import { useStore } from "vuex" 
import { watch } from "vue" 

export default {
  setup(){
    const store = useStore()
    const user = store.state.user.currentUser

    watch(() => _.cloneDeep(store.state.user.currentUser), …
Run Code Online (Sandbox Code Playgroud)

javascript vue.js vue-router vuex

3
推荐指数
1
解决办法
225
查看次数